在 JavaScript 中,我可以这样做:
var somevar = {
propertyTwo : false,
propertyThree : "hello!"
}
var test = somevar.propertyOne || somevar.propertyTwo || somevar.propertyThree
alert(test); //displays "hello!"
PHP中是否有类似的功能?一直无法在网上找到任何东西。
我试过这个,但 PHP 只是把它当作比较和回显的1
( true
)
$somevar = array(
'propertyTwo' => false,
'propertyThree' => "hello!"
);
$test = $somevar['propertyOne'] || $somevar['propertyTwo'] || $somevar['propertyThree'];
echo $test; //displays '1'
如果没有,这并不是什么大不了的事,但我认为使用 php 5.x 中提供的所有花里胡哨,将有某种速记方式将值列表中的第一个真值分配给单个值那样的变量。
我想我可以写一个函数。
编辑 :
正如我所怀疑的,PHP 没有相同的怪癖。
我写的快速函数
function assign_list($list){
foreach($list as $v)
if(isset($v) && $v) return $v;
return false;
}
只需将一系列东西传递给它