Php 检查null并执行一行或另一行
我有以下代码:Php 检查null并执行一行或另一行,php,operators,ternary,Php,Operators,Ternary,我有以下代码: $red = "value"; $resp = (($red && get("aaa")) ?: getb("aaa")); print $resp; function get($aaa) { return "aaa"; } function getb($aaa) {
$red = "value";
$resp = (($red && get("aaa")) ?: getb("aaa"));
print $resp;
function get($aaa)
{
return "aaa";
}
function getb($aaa)
{
return $aaa . "bbb";
}
但是在本例中,$red&&get(“aaa”)
代码被分配给$resp
,但是相反,我希望如果$red
不为null,执行get(“aaa”)
,如果get(“aaa”)
返回false,则执行getb(“aaa”)
当$red
为null或get(“aaa”)
为false时,代码运行正常,但在本例中为return true时
在这样的一行代码中是否有这样做的方法?或者我必须使用ifs?检查这个,它应该涵盖你的所有情况。不过我会使用
if
s。像这样的嵌套运算符很难读取和维护,几乎没有任何好处(除了几行代码)。谢谢@digitaldriver,它帮了很多忙。@Jeto,是的,这是真的。谢谢