根据PHP 7.2文档
引入了一种新类型的对象,可用于(逆变)参数类型和(协变)返回任何对象的类型。
并给出了以下示例
<?php
function test(object $obj) : object
{
return new SplQueue();
}
test(new StdClass());
有人可以详细说明逆变参数和协变返回类型的含义以及这个新对象的工作原理
代码中两个地方的object
都可以返回通用对象,即任何类型的实例。 (如你的例子所示)
否则它需要是:
<?php
function test(StdClass $obj) : SplQueue
{
return new SplQueue();
}
test(new StdClass());