PHP替代三元运算符

PHP替代三元运算符,php,javascript,ternary-operator,Php,Javascript,Ternary Operator,在JavaScript中,可以使用以下代码: var = value || default; 除了三元运算符外,PHP中是否有等效运算符: $var = ($value) ? $value : $default; 不同之处在于,从PHP5.3开始,只需编写一次$value? $var = $value or $var = $default; $var=$value?:$default另一个巧妙的解决方法(与5.3之前版本兼容)是: $var = current(array_filter(a

在JavaScript中,可以使用以下代码:

var = value || default;
除了三元运算符外,PHP中是否有等效运算符:

$var = ($value) ? $value : $default;
不同之处在于,从PHP5.3开始,只需编写一次
$value

$var = $value or $var = $default;
$var=$value?:$default

另一个巧妙的解决方法(与5.3之前版本兼容)是:

$var = current(array_filter(array($value, $default, $default2)));

但如果您确实有多个可能的值或默认值,那么这确实是明智的。(不会真正节省打字时间,不是一种简洁的语法选择,只是避免两次提到
$value

使用5.3或不使用5.3我会写

$var = 'default';
if ($value) $var = $value;

因为我讨厌只写结构

谢谢,唯一的问题是Dreamweaver不承认这是有效的代码,所以我在这一行留下了一个错误。PHP处理器确实如此,所以我想这才是最重要的…谢谢,本质上我是在寻找一种方法来节省输入(并增加一点可读性)可能的重复,