在Ruby中,您可以轻松地为变量设置默认值
x ||= "default"
如果x为nil或false,则上述语句会将x的值设置为“默认”
PHP中是否有类似的快捷方式,还是我必须使用更长的形式:
$x = (isset($x))? $x : "default";
有没有更简单的方法可以在PHP中处理此问题?
从PHP 5.3开始,您可以使用三元运算符,而忽略中间参数:
$x = $x ?: 'default';
从PHP 7.0开始,您还可以使用null合并运算符
// PHP version < 7.0, using a standard ternary
$x = (isset($_GET['y'])) ? $_GET['y'] : 'not set';
// PHP version >= 7.0
$x = $_GET['y'] ?? 'not set';
isset($x) or $x = 'default';
我将其包装在一个函数中:
function default($value, $default) {
return $value ? $value : $default;
}
// then use it like:
$x=default($x, 'default');
有些人可能不喜欢它,但是如果您执行疯狂的函数调用,它可以使您的代码更整洁。
我认为您较长的表格已经是php的快捷方式...并且我不会使用它,因为它不好读
注意事项:在symfony框架中,大多数“ get”方法都有第二个参数来定义默认值...
本文地址:http://php.askforanswer.com/shezhimorenzhitiaojianfenpei.html
文章标签:logical-operators , php , ruby
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!
文章标签:logical-operators , php , ruby
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!
评论已关闭!