时间:2021-07-01 10:21:17 帮助过:23人阅读
在PHP5.5引入生成器的概念。生成器函数每执行一次就得到一个yield标识的值。在PHP7中,当生成器迭代完成后,可以获取该生成器函数的返回值。通过Generator::getReturn()得到。
- <?php
- function generator() {
- yield 1;
- yield 2;
- yield 3;
- return "a";
- }
- $generatorClass = ("generator")();
- foreach ($generatorClass as $val) {
- echo $val.” “;
- }
- echo $generatorClass->getReturn();
输出为:1 2 3 a
生成器中引入其他生成器
在生成器中可以引入另一个或几个生成器,只需要写yield from functionName1
- <?php
- function generator1(){
- yield 1;
- yield 2;
- yield from generator2();
- yield from generator3();
- }
- function generator2(){
- yield 3;
- yield 4;
- }
- function generator3(){
- yield 5;
- yield 6;
- }
- foreach (generator1() as $val){
- echo $val, " ";
- }
输出:1 2 3 4 5 6
以上就是介绍php7中生成器使用方法更新的详细内容,更多请关注Gxl网其它相关文章!