[PHP] yield沟通函数循环内外
2023-02-18 15:41:16 时间
1.yield是函数内外,循环内外沟通用的 , 当你的函数需要返回一个大数组 , 循环的时候需要遍历这个大数组时 , 并且需要多次遍历这个函数的返回值 , 这个是有用的
2.当我也是只需要在一次循环中就可以处理完所有的事情时 , 这个就没啥用
<?php $start=memory_get_usage(); function readTxt(){ $handle = fopen("./2018-12-awk-uniq.txt", 'rb'); while (feof($handle)===false) { yield fgets($handle); echo "\n4:***************\n"; } fclose($handle); } foreach (readTxt() as $key => $value) { echo "1:".$value; echo "2:=================\n"; echo "3:".(memory_get_usage()-$start); }
在函数内循环的时候 , 会暂停住 , 回到我的外层循环里来 , 注意看输出的顺序
当然如果我在读取一行数据的循环里 , 把所有工作都做完 , 这个yield就不需要了 ,起到个传递的作用
相关文章
- 第 3 篇:实现博客首页文章列表 API
- 初始化 RESTful API 风格的博客系统
- Chrome 离线安装 Proxy SwitchyOmega 重启后消失解决办法
- 程序员必备之终端模拟器,让你的终端世界多一抹“颜色”
- 搭建博客、自己的小窝?快来看看这些开源静态网站生成器
- 有了这些开源动效项目,设计和开发不再相杀只剩相爱
- 优雅地使用 C++ 制作表格:tabulate
- 真·程序员必修书单
- 命令行版的斗地主你玩过没?
- 统计各个分类和标签下的文章数
- 缩写名词解释
- 用这些免费开源的图标库,为你的项目画龙点睛吧!
- 快速搭建 SpringCloud 微服务开发环境的脚手架
- 这可能就是你苦苦寻找免费、高颜值、功能强大的 Markdown 编辑器(共5款)
- MySQL5.5 升级 5.6
- 免费申请 HTTPS 证书,开启全站 HTTPS
- 和微信公众号编辑器战斗的日子
- 在 Grafana Loki 中用 Logging operator 来访问 Kubernetes pod 日志
- IntelliJ IDEA终于支持对Redis 的可视化窗口操作了,真香!
- 如何实现一个 Kubernetes CSI Driver