如果php中不存在对象,有没有办法将对象参数值设置为空字符串

时间:2016-10-28 12:50:38

标签: php

有没有办法将对象参数值设置为空字符串,如果对象不存在而不是致命错误,则为null?

让我说在我看来我有这个:

<div> <?php $car->name; ?> </div

在某些情况下,汽车有可能是空物。 我只能编写自己的函数来检查对象并返回对象参数或空字符串,但我想知道是否有默认的方法来执行此操作。

另一种方法是使用简写if语句,如

($car) ? $car->name : "";

但它太长了,但在视野中恕我直言。

1 个答案:

答案 0 :(得分:1)

您有几个不同的选择

漫长的方法是在if语句中使用以下函数之一:

  • isset

示例

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并每天使用它!