gpt4 book ai didi

PHPStorm:对象集合的正确 PHPDoc?

转载 作者:IT王子 更新时间:2023-10-28 23:45:28 27 4
gpt4 key购买 nike

我正在使用 PHPStorm IDE,在运行代码检查时遇到了麻烦。

我有一个返回对象集合的方法。 Collection 本身是一个对象,它有自己的方法,并实现了 Traversable接口(interface):

class Repository
{
public function findByCustomer(Customer $user)
{
// ...
return new Collection($orders);
}
}

如果我记录 findByUser() 以返回一个 Collection,代码检查理解该对象的方法,但不理解该集合包含哪些对象:

/**
* @return Collection
*/
public function findByCustomer() { ... }

Method getTotal() not found in class Collection

如果我记录 findByUser() 以返回 Order 对象的集合,代码检查现在了解集合中的内容,但不了解 上的方法集合本身:

/**
* @return Order[]
*/
public function findByCustomer() { ... }

Method slice() not found in class Order[]

有没有办法同时指定两者,类似于 Java 的语法?

/**
* @return Collection<Order>
*/
public function findByCustomer() { ... }

最佳答案

您可以将它们(两种类型)组合在一起。在某些情况下可能并不理想,但可以工作,您可能认为它比通过 @var PHPDoc 注释手动指定类型更好。

/** @return Collection|Order[] */

关于PHPStorm:对象集合的正确 PHPDoc?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10706835/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com