致命错误:在原则中对null调用成员函数getId()

use*_*758 3 php symfony doctrine-orm zend-framework2

我说错了,

Fatal error: Call to a member function getId() on null.
Run Code Online (Sandbox Code Playgroud)

但是我如何检查元素,这是我的代码

$infoArray['groupId'] = $info->getId();
$infoArray['name'] = $info->getName();
$infoArray['addressLine1'] = $info->getAddressLine1();
$infoArray['addressLine2'] = $info->getAddressLine2();
$infoArray['isActive'] = $info->getActive();
$infoArray['countryId'] = $info->getCountry()->getId(); //Here is my error line
$infoArray['countryName'] = $info->getCountry()->getName();
$infoArray['stateId'] = $info->getState()->getId();
$infoArray['stateName'] = $info->getState()->getName();
$infoArray['cityId'] = $info->getCity()->getId();
$infoArray['cityName'] = $info->getCity()->getName();
$infoArray['areaId'] = $info->getArea()->getId();
$infoArray['areaName'] = $info->getArea()->getName();
$infoArray['zipcode'] = $info->getZipcode();
Run Code Online (Sandbox Code Playgroud)

cha*_*asr 5

将行替换为:

$infoArray['countryId'] = $info->getCountry() ? $info->getCountry()->getId() : null;
Run Code Online (Sandbox Code Playgroud)

对与关联相对应的每一行执行相同操作(可以为null),null如果对象为null ,则将返回该行。