我遇到一段PHP代码,里面有奇怪的问号运算符。由于代码本身对此部分没有任何注释,所以我尝试在google上搜索它,但没有成功。
我感兴趣的代码是这样的:
<?php
class Cart
{
private $_user;
private $_items = [];
public function __construct(?User $user)
{
$this->_user = $user;
}
public function getUser(): ?User
{
return $this->_user;
}我首先想到的是类型提示,它是在PHP7中引入的,但显然不是这样的,也不是严格的类型声明。我不知道这是什么。你能帮帮我吗?
发布于 2018-10-23 04:21:47
http://php.net/manual/en/migration71.new-features.php
参数和返回值的
类型声明现在可以通过在类型名称前加上问号来标记为可空。这表示NULL和指定的类型一样,可以作为参数传递,也可以作为值返回。
发布于 2018-10-23 04:21:54
这意味着您的参数或返回值可以为空。
PHP7.1引入了它:http://php.net/manual/en/migration71.new-features.php
https://stackoverflow.com/questions/52937200
复制相似问题