PHP 7 以下 代替 ?? 运算符
代码
在 php 7 中,可以使用 ?? 运算符
example:
return $var ?? '';
function first_no_null(&$var, $default = '')
{
return !empty($var) ? $var : $default;
}
调用
// 普通调用
$var = first_no_null($var);
// 数组调用
$var = first_no_null($arr['example']));
// 对象调用
$var = first_no_null($obj->example);
本作品采用《CC 协议》,转载必须注明作者和本文链接
并没有用,举个例子:
$b->abc->abc ?? '1'
,改用你的first_no_null
依然会报错:@leo 正在改 :joy: 我刚刚调用也发现了
@leo 有没有更好的的解决办法,php 7 以下,老是用 isset() 和 !empty() ,感觉太麻烦了
!empty()
本身就已经包含了isset
判断,isset
可省略@leo 我试试,我这数组判断,总是报出未定义索引
@leo 我想要这样判断,怎么写比较合适?


如果直接这样传到
会报出未定义索引
加个引用就可以了
@leo 哇哇,好神奇,解决了,而且对象,数组,普通变量都可以直接调用,还不会报错。:+1: :kissing_heart: