gpt4 book ai didi

PHP - 如何计算发电机的产量

转载 作者:可可西里 更新时间:2023-11-01 12:43:09 27 4
gpt4 key购买 nike

使用 PHP >= 5.5 如果我们有一个产生值的方法,那么计算这些值的最佳方法是什么?

我期望的是能够将生成器转换为数组并对其进行计数,但它会返回一个空数组。 Count() 也不起作用,因为生成器被报告为空,尽管它不是空的。

我对此感到困惑。如果您不需要计算发电机的产量,那么这是一个不错的功能,否则我认为它没有多大意义。有一种方法可以检测生成器是否为空,这是通过使用 key() 方法,如果它返回 NULL,那么要么没有 yield ,要么生成器已经被迭代过,这意味着当前指针为空。

最佳答案

如果你必须这样做,请按照 native 功能的在线说明进行操作:

count(iterator_to_array($generator, false));

但是,请注意:在此之后,您的 $generator 将被执行并消耗。因此,如果您将相同的 $generator 放入下一行的 foreach 中,它将循环 0 次。

生成器在设计上是高度动态的(与数组等固定数据结构相反),这就是为什么它们不提供 ->count()->rewind().

关于PHP - 如何计算发电机的产量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21604654/

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