gpt4 book ai didi

PHP 生成器返回类型

转载 作者:行者123 更新时间:2023-12-03 16:39:37 25 4
gpt4 key购买 nike

我以前从未在 PHP 中使用过生成器,documentation 中也没有示例。显示返回类型声明。

在 PhpStorm 中,执行此操作时 IDE 中出现错误:

public function getDataIncrementally(): void {
yield from [/* some large set of numbers*/];
}

错误是:

Generators may only declare a return type of Generator, Iterator or Traversable, or iterable, void is not permitted.



我可以看到继承树是 Traversable -> Iterator -> Generator .同时, iterable 是 PHP 7.1 中引入的一种新的伪类型。

使用 iterable是否合适?对于返回类型声明,如果我只需要支持 PHP >= 7.1?

最佳答案

您的退货类型是 Generator ,但您正在使用 void .请尝试以下操作:

public function getDataIncrementally(): \Generator {
yield from [/* some large set of numbers*/];
}

关于PHP 生成器返回类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54603830/

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