在PHP 8往日,即使封装的较多,咱们常常展示一种情景:一个因变量接收X东西,但又大概是null,此时我在运用X东西属性前,就须要对null举行确定,免得展示缺点。
在东西较多时,简单展示多层嵌套确定的情景,比方:
$country = null;
if ($session !== null) {
$user = $session->user;
if ($user !== null) {
$address = $user->getAddress();
if ($address !== null) {
$country = $address->country;
}
}
}
PHP 8 此后减少了一个新语法:?->,特殊一致于PHP7里引入的??。即是在取属性前,PHP会对东西举行确定,即使东西是null,那么就径直归来null了,不复取其属性:
$country = $session?->user?->getAddress()?->country;
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。