php 运算符“??”是什么意思?做? [重复]

问题描述 投票:0回答:2
$serial = ($_SERVER['SSL_CLIENT_M_SERIAL'] ?? false);

看起来有点像三元。但为此我预料到了:

$serial = $_SERVER['SSL_CLIENT_M_SERIAL'] ?  $_SERVER['SSL_CLIENT_M_SERIAL'] : false

也许这是简写,但找到链接来确认是很困难的。我在 php4 遗留代码中找到了该片段。

(注意这是 php 而不是 c#)

php null-coalescing-operator
2个回答
1
投票

我在 php4 遗留代码中找到了该片段

这很奇怪。据我所知,它是在 PHP 7 中添加的

来自文档:

已添加空合并运算符 (??) 作为语法糖,用于需要将三元与 isset() 结合使用的常见情况。如果第一个操作数存在且不为 NULL,则返回;否则返回第二个操作数。


-5
投票

如果

该怎么办
    if null

一个链接 ps:不客气,谢谢你的负2,很多语言都使用这个,尤其是swift

© www.soinside.com 2019 - 2024. All rights reserved.