首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >php类型提示对象类型

php类型提示对象类型
EN

Stack Overflow用户
提问于 2017-06-19 13:30:49
回答 3查看 2.4K关注 0票数 1

我在文档中没有发现有关这方面的任何信息,但似乎存在这种情况是合乎逻辑的。如何使类型提示返回object类型的值?(我指的是任何对象,而不是\DateTime等的某个对象。)

代码语言:javascript
运行
复制
function getParticipant(): ?object
{
   //...
  $x = new Cat(); 
  return $x;
}

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

您可能会说,这真的是不必要的,我本可以只编写: Cat,但是当我覆盖一个在他的PHPDoc中包含了* @return object|null */的方法时,这并不是我所需要的。

EN

Stack Overflow用户

发布于 2017-06-19 13:38:31

:object不解析具有此类型的变量。实际上,PHP将查找名为object的类,并期望返回该类的实例。

使用您的示例,您应该指示该函数将返回Cat的一个实例,因此它应该如下所示:

代码语言:javascript
运行
复制
function getParticipant(): Cat
{
    return new Cat();
}

我想说的是,PHPDoc说object将被归还是很好的。IDE应该解决这个问题,对于PHP解释器来说,这并不重要。

如果您正在覆盖方法,您可以简单地用@return覆盖PHPDoc语句。

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44631968

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档