PHP嵌套IF ELSE简写


PHP nested IF ELSE Short hand

我试图根据变量的值显示正确的结果,但我使用的是简写

我已经尝试了以下操作,但它似乎忽略了第一次检查,即使值是正确的。

(!empty($national_ID_number)) ? 
    $national_ID_number : 
    (!empty($foreign_ID_number)) ?
        $foreign_ID_number  : 
        $temporal_permit_number)

谢谢

这段代码对我来说是正确的,你似乎增加了额外的括号。

$national_ID_number = '';
$foreign_ID_number = 2;
$temporal_permit_number = 3;
$finalID = (!empty($national_ID_number)) ? $national_ID_number : (!empty($foreign_ID_number ) ? $foreign_ID_number  : $temporal_permit_number);
echo $finalID;

我刚刚做了一点深入的研究-显然每个条件都需要在括号内,下面的修复工作很好。

(!empty($national_ID_number)) ? 
    $national_ID_number : 
    ((!empty($foreign_ID_number)) ?
        $foreign_ID_number  : 
        $temporal_permit_number));

引用和PHP操作符优先级