在 PHP 7 中,一个称为“可空”的新功能类型”被引入。它允许开发人员指定参数或返回值可以是指定类型或 null。可空类型由类型声明前的问号 (?) 表示。
语法:
function test(?string $parameter1, string $parameter2) {}
test("foo", "bar"); // OK test(null, "foo"); // OK test("foo", null); // Error
语法:
function error_func(): int { return null ; // Error: Return value must be of type integer } function valid_func(): ?int { return null ; // OK }
语法:
class Foo { private ?object $bar = null; // OK: can be null }
从 PHP 8.0 开始,“?T 表示法被视为常见情况的简写的T|null"。
语法:
class Foo { private object|null $baz = null; }
< ;h3>错误处理
如果使用的PHP版本较低从 7.1 开始,如果使用可为 null 的类型,将会抛出语法错误。在这种情况下,请删除问号 (?)。
以上是可空类型在 PHP 7 及更高版本中如何工作?的详细内容。更多信息请关注PHP中文网其他相关文章!