【发布时间】:2017-11-19 03:44:30
【问题描述】:
我很高兴 PHP 7.1 引入了the iterable pseudo-type。
虽然这在循环这种类型的参数时很棒,但我不清楚当你需要将它传递给只接受array 或只接受Traversable 的 PHP 函数时该怎么做。例如,如果你想做一个 array_diff,你的iterable 是一个Traversable,你会得到一个array。相反,如果你调用一个接受迭代器的函数,如果iterable 是array,你会得到一个错误。
有像iterable_to_array(不是:iterator_to_array)和iterable_to_traversable这样的东西吗?
我正在寻找一种在我的函数中避免条件的解决方案,只是为了处理这种差异,并且不依赖于我定义自己的全局函数。
使用 PHP 7.1
【问题讨论】:
标签: php arrays iterator php-7 php-7.1