欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

php 双问号 两个问号 ?? AG chatgpt 有大用 有大大用

在 PHP 中,?? 操作符被称为“空合并运算符”(Null Coalescing Operator)。它用于简化在查找变量值时的常见模式,特别是在处理可能未设置或为 null 的变量时。

具体来说,$variable ?? $default 的意思是:

  • 如果 $variable 存在且不为 null,则返回 $variable 的值。

  • 如果 $variable 未设置(即不存在)或其值为 null,则返回 $default 的值。

在你提供的示例中:

php

$login = $data['login'] ?? null; $password = $data['password'] ?? null;

这行代码的意思是:

  • 尝试从 $data 数组中获取 'login' 的值,如果 'login' 不存在(未定义或为 null),则将 $login 设置为 null

  • 同样地,从 $data 数组中获取 'password' 的值,如果 'password' 不存在(未定义或为 null),则将 $password 设置为 null

这使得代码更加简洁和易读,同时避免了使用 isset() 来检查变量是否存在的繁琐。




空合并运算符 (两个问号 双问号)   ?? 是在 PHP 7.0 中引入的。因此,从 PHP 7.0 开始,您就可以使用这个运算符。如果您使用的是早于 PHP 7.0 的版本,则需要改用其他方法,例如 isset() 来检查变量是否存在。


普通分类: