空字符串不等于PHP三元运算符表达式中的空字符串

空字符串不等于PHP三元运算符表达式中的空字符串,php,string,ternary-operator,is-empty,Php,String,Ternary Operator,Is Empty,有人能给我解释一下吗 $a=""; $a="" ? "" : "muh"; echo $a; // returns muh 看起来您正试图使用=,但实际上您使用的是= 您的代码正在尝试为表达式的结果分配$a?“”:“muh”。空字符串的计算结果为false,$a的值为muh 让我们加上一些括号,使其更加明显: 空字符串的计算结果为false。好的,这就是答案。谢谢 //$a equals (if empty string then "" else "muh") $a = ("" ? ""

有人能给我解释一下吗

$a="";

$a="" ? "" : "muh";

echo $a; 
// returns muh

看起来您正试图使用
=
,但实际上您使用的是
=

您的代码正在尝试为表达式
的结果分配
$a
?“”:“muh”
。空字符串的计算结果为
false
$a
的值为
muh

让我们加上一些括号,使其更加明显:


空字符串的计算结果为false。好的,这就是答案。谢谢
//$a equals (if empty string then "" else "muh")
$a = ("" ? "" : "muh");

echo $a; // muh


//$a equals (if $a is equal to empty string then "" else muh)
$a = ($a == "" ? "" : "muh"); 

echo $a; //