有没有办法将对象参数值设置为空字符串,如果对象不存在而不是致命错误,则为null?
让我说在我看来我有这个:
<div> <?php $car->name; ?> </div
在某些情况下,汽车有可能是空物。 我只能编写自己的函数来检查对象并返回对象参数或空字符串,但我想知道是否有默认的方法来执行此操作。
另一种方法是使用简写if语句,如
($car) ? $car->name : "";
但它太长了,但在视野中恕我直言。
答案 0 :(得分:1)
您有几个不同的选择
漫长的方法是在if语句中使用以下函数之一:
示例
if(!isset($car->name)) {
return 'No car';
}
使用空
if(empty($car->name)) {
return 'No car';
}
如果你真的想要,你可以将它们结合起来。
您也可以像上面那样使用简写或使用isset和/或空函数来使用它们。
如果您使用的是PHP版本7,则可以使用随附的新功能,称为Null合并运算符(??)
示例:
echo $car->name ?? 'No car';
如果存在且不为NULL,则返回第一个操作数;否则它返回第二个操作数。
我正在运行PHP7并每天使用它!