JavaScript";或-PHP中的功能
我有以下PHP代码JavaScript";或-PHP中的功能,javascript,php,Javascript,Php,我有以下PHP代码 if($row["phone"]) $phone = $row["phone"]; else $phone = $row["mobile"]; 在JavaScript中,我可以简单地编写 phone = row.phone || row.mobile; 这样写起来容易多了,而且看起来好多了。如果我在PHP中尝试同样的方法,它只会返回true $phone = $row["phone"] || $row["mobile"]; echo $phone; //
if($row["phone"])
$phone = $row["phone"];
else
$phone = $row["mobile"];
在JavaScript中,我可以简单地编写
phone = row.phone || row.mobile;
这样写起来容易多了,而且看起来好多了。如果我在PHP中尝试同样的方法,它只会返回true
$phone = $row["phone"] || $row["mobile"];
echo $phone; // 1
PHP中是否有任何操作符为我提供与JavaScript中相同的功能?
我尝试了按位或
|,但这只是有时有效,有时我会得到非常奇怪的结果。在PHP中,逻辑运算符总是返回布尔值,因此您必须像在问题中所做的那样完成这项工作。也可以使用三元运算符进行写入:
$phone = $row['phone'] ? $row['phone'] : $row['mobile'];
看一看。
您可以这样使用elvis运算符:
$phone = $row['phone'] ?: $row['mobile'];
这将比
$phone = $row['phone'] ? $row['phone'] : $row['mobile'];
这个?
似乎就是我要找的。你能简单解释一下这到底是怎么回事吗?@chillichief这是三元运算符。谷歌,好的,我知道了。它实际上只是我所写代码的shorhand版本。THXIt基本上是if--else的简写@chillichiefOk这正是我想要的。短而甜