php 对象类型的类型提示

hve*_*ous 2 php type-hinting php-7.1

我在文档中没有找到有关此内容的信息,但它的存在似乎合乎逻辑。如何为返回类型值创建类型提示object?(我说的是任何对象,而不是例如某个对象\DateTime等)

function getParticipant(): ?object
{
   //...
  $x = new Cat(); 
  return $x;
}
Run Code Online (Sandbox Code Playgroud)

它不起作用,真正不公平的是,这print getType($x)会导致object。所以我们有一个object类型,但不能严格地说我们将返回一个object?

你可能会说这真的没有必要,我可以直接写: Cat,但是当我覆盖* @return object|null */他的 PHPDoc 中的方法时,这不是我需要的。

Mar*_*ker 5

PHP 中尚不存在泛型的类型提示object,但由于RFC 对象类型提示于2017 年 5 月 31 日以 32 票对 3 票通过,因此应该从 7.2.0 版开始提供。

尽管通常(在可能的情况下)最好对特定的类或接口进行类型提示。