这个操作符如何处理'';在php代码中工作。? $array=['name'=>'Jonh','lastname'=>'Doe','昵称'=>'JD']; $person=$array['name']??无效//尝试将null更改为true或false 回声$人; $person=$array['age']??无效//没有未定义的索引:年龄 回声$人;
我找不到关于它的任何文件 您可以在php.net中找到关于它的文档 编辑: 它的工作原理类似于这个操作符如何处理'';在php代码中工作。? $array=['name'=>'Jonh','lastname'=>'Doe','昵称'=>'JD']; $person=$array['name']??无效//尝试将null更改为true或false 回声$人; $person=$array['age']??无效//没有未定义的索引:年龄 回声$人;,php,php-7,Php,Php 7,我找不到关于它的任何文件 您可以在php.net中找到关于它的文档 编辑: 它的工作原理类似于isset()和? 所以代码如下: $array = ['name'=>'Jonh', 'lastname' => 'Doe', 'nickname' => 'JD'] ; $person = $array['name'] ?? null ; //try to change null to true or false<br> echo $person; $pe
isset()
和?
所以代码如下:
$array = ['name'=>'Jonh', 'lastname' => 'Doe', 'nickname' => 'JD'] ;
$person = $array['name'] ?? null ; //try to change null to true or false<br>
echo $person;
$person = $array['age'] ?? null; //no Undefined index: age<br>
echo $person;
可能是这样的:
return isset($a)?$a:$b
它是新的:
而
?:
的缩写形式多年来几乎都是一样的(至少在PHP 5.3中是这样)这是一个空合并运算符-由于某些原因,请参阅它似乎在PHP 5.6.19中也起作用。@TimBrownlaw不在5.1.18中:(感谢大家对我的问题给出了所有有用的答案!它与PHP相同
return $a??$b
// Fetches the value of $_GET['user'] and returns 'nobody'
// if it does not exist.
$username = $_GET['user'] ?? 'nobody';
// This is equivalent to:
$username = isset($_GET['user']) ? $_GET['user'] : 'nobody';