位置: IT常识 - 正文

php迭代器的工作原理分析(迭代器实现原理)

编辑:rootadmin

推荐整理分享php迭代器的工作原理分析(迭代器实现原理),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php迭代器模式,php 迭代器,迭代器代码,迭代器实现原理,php迭代器的作用,迭代器实现原理,php迭代器的作用,迭代器代码,内容如对您有帮助,希望把文章链接给更多的朋友!

468

工作原理

1、在第一次迭代之前,运行iterator::rewind()方法。

只运行一次,返回迭代器的第一个要素,但该方法没有返回值

php迭代器的工作原理分析(迭代器实现原理)

2、验证第一个元素是否有效。

验证方法可以定制。如果返回值是true,继续执行,如果返回值是false,迭代终止。

3、foreach继续调用Iterator。

返回指定要素的键和值。

4、foreach的方法体

var_dump($key,$value)

5、每次迭代后,调用Iterator决定下一个元素并重复第二步。

实例

string(18)"myIterator::rewind"//迭代开始前调用rewind方法,返回到迭代器的第一个元素,同时执行$this->position=1;string(17)"myIterator::valid"//验证当前元素$this->array[1]是否有效,有效则继续执行;string(19)"myIterator::current"//返回当前元素对应的值$this->array[0]='firstelement'string(15)"myIterator::key"//返回当前元素的键$this->position=1int(1)//var_dump($key)string(12)"secondelement"//var_dump($value)string(16)"myIterator::next"//向前移动到下一个元素++$this->position=2string(17)"myIterator::valid"//验证当前元素$this->array[2]是否有效,有效则继续执行;string(19)"myIterator::current"//重复之前的步骤string(15)"myIterator::key"//重复之前的步骤int(2)//重复之前的步骤string(11)"lastelement"//重复之前的步骤string(16)"myIterator::next"//向前移动到下一个元素++$this->position=3string(17)"myIterator::valid"//验证当前元素$this->array[3]是否有效,无效则退出遍历

以上就是php迭代器的工作原理分析,希望对大家有所帮助。更多php学习指路:php教程

本文链接地址:https://www.jiuchutong.com/zhishi/311553.html 转载请保留说明!

上一篇:浅谈帝国cms设置伪静态的方法(帝国cms到底好不好)

下一篇:织梦文章内容图片显示绝对路径修改(织梦文章内容图片大全)

  • 苹果12mini支持无线充电吗(苹果12mini支不支持无线充电)

    苹果12mini支持无线充电吗(苹果12mini支不支持无线充电)

  • 爱奇艺会员分享二维码在哪里(爱奇艺会员分享电影非会员能看吗)

    爱奇艺会员分享二维码在哪里(爱奇艺会员分享电影非会员能看吗)

  • 转转未成年可以买东西吗(转转未成年可以实名认证吗)

    转转未成年可以买东西吗(转转未成年可以实名认证吗)

  • 华为手机怎么下载来电铃声(华为手机怎么下载谷歌浏览器)

    华为手机怎么下载来电铃声(华为手机怎么下载谷歌浏览器)

  • 苹果打不出去接不进来(苹果打不出去接不到电话)

    苹果打不出去接不进来(苹果打不出去接不到电话)

  • 钉钉观看直播时长怎么计算(钉钉观看直播时长与实际不符)

    钉钉观看直播时长怎么计算(钉钉观看直播时长与实际不符)

  • Word怎么设置标题一标题二标题三(word怎么设置标题级别)

    Word怎么设置标题一标题二标题三(word怎么设置标题级别)

  • 快手戳一下是匿名的吗(快手里匿名是什么情况)

    快手戳一下是匿名的吗(快手里匿名是什么情况)

  • 微信上下载的文件在手机哪里(微信上下载的文件在哪看)

    微信上下载的文件在手机哪里(微信上下载的文件在哪看)

  • 红米与小米有什么关系(红米和小米有啥关系)

    红米与小米有什么关系(红米和小米有啥关系)

  • 手机报停和注销一样吗(手机卡报停和注销有什么区别)

    手机报停和注销一样吗(手机卡报停和注销有什么区别)

  • 快手B类包括什么(快手b类对账号有影响吗?)

    快手B类包括什么(快手b类对账号有影响吗?)

  • 荣耀9xpro充电速度(荣耀9x充电效率)

    荣耀9xpro充电速度(荣耀9x充电效率)

  • 剪映哪个版本有画中画功能(剪映哪个版本有荧光线描特效)

    剪映哪个版本有画中画功能(剪映哪个版本有荧光线描特效)

  • 华为nova6怎么换卡(华为nova6怎么换锁屏)

    华为nova6怎么换卡(华为nova6怎么换锁屏)

  • 腾讯会议能看见对方干什么吗(腾讯会议能看见ip地址吗)

    腾讯会议能看见对方干什么吗(腾讯会议能看见ip地址吗)

  • 淘宝淘金币怎么看不到(淘宝淘金币怎么用不了)

    淘宝淘金币怎么看不到(淘宝淘金币怎么用不了)

  • iphone11电量显示怎么弄(iphone11怎么显示百分比)

    iphone11电量显示怎么弄(iphone11怎么显示百分比)

  • 抖音怎么不让别人看到我的关注(抖音怎么不让别人评论)

    抖音怎么不让别人看到我的关注(抖音怎么不让别人评论)

  • 怎么显示一个月的朋友圈(怎么显示一个月的核酸检测结果)

    怎么显示一个月的朋友圈(怎么显示一个月的核酸检测结果)

  • 朋友圈的视频怎么删除(朋友圈的视频怎么发到视频号)

    朋友圈的视频怎么删除(朋友圈的视频怎么发到视频号)

  • JSONP解决跨域问题(jsonp解决跨域问题spring3.0)

    JSONP解决跨域问题(jsonp解决跨域问题spring3.0)

  • WordPress安装百度统计教程(wordpress怎么安装插件)

    WordPress安装百度统计教程(wordpress怎么安装插件)

  • 小规模纳税人已过开票截止日期禁止开票怎么办
  • 国税和地税的区别
  • 配件销售过程中有什么注意事项
  • 进项3个点销项13个点,增值税
  • 代销商品怎么交增值税
  • 如何处理固定资产长期待摊费
  • 将固定资产转给母公司属于债务重组吗
  • 债转股资金
  • 已贴花的凭证凡修改后所载金额增加的部分应补贴印花
  • 购买旧资产如何入账
  • 小规模纳税人销售已使用固定资产
  • 支付宝怎么开个人增值税发票
  • 现金折扣税前扣除
  • 进项税转出属于什么科目
  • 境外企业提供软件使用权给境内企业
  • 公司账户转个人账户限额
  • 现金交易的发票可以认证
  • 免税发票备注栏
  • 开具红字发票后发现购买方已做抵扣怎么办
  • 诊所购药有差价怎么办
  • 发票查出来显示不一致是为啥
  • 税局代开专票作废怎么做账
  • 暂估成本跨年怎么算
  • 外经证核销办理流程图
  • redis在php项目中的使用实例
  • 最早遥控器是谁发明的
  • 小企业取得存货入账价值的依据是
  • 国有划拨土地给集体企业怎么办
  • 农产品来料加工设备
  • 管理费用冲减其他应收款
  • 员工旅游的费用可以税前扣除吗
  • 又拍云使用教程
  • 税控盘是干什么用的操作有风险吗
  • 产品体验是什么意思
  • php实现数据库查询
  • cdr快捷键命令大全
  • 红字发票信息表填好后再怎么操作
  • dedecms建站
  • 委托收款的含义
  • sql server分为哪两类
  • 小公司没有财务软件怎么手工记账
  • 固定资产评估收费标准
  • 顾问费交多少税
  • 如何办理出口收款凭证
  • 经营租赁属于什么收入
  • 房地产企业取得政府补助
  • 退款产生的手续费怎么算
  • 待抵扣进项税额什么意思
  • 增值税为负值时当年可抵扣的进项税
  • 开红字发票必须要收回原发票并作废吗?
  • 收到商业承兑汇票的会计分录
  • 首先我们先了解一下作者英语怎么说呢
  • 金税盘忘记清卡了怎么办
  • 营业外收入算未开票收入吗
  • 固定成本包括哪些项目
  • access数据库导入到sqlserver
  • sqlserver 查询锁
  • select into 和 insert into select 两种表复制语句
  • 调整服务能力的策略不包括什么
  • ubuntu ftp服务开启
  • linux设置时间日期
  • linux下使用lftp的小结(远程服务器备份)
  • win7网页显示不全
  • win10任务栏位置怎么改变
  • win10系统无法登陆
  • win8系统怎么重新安装系统
  • win10怎么打开ie浏览器的兼容模式
  • win8图标大小怎么调
  • Win10 Mobile 10586.164中文版升级截图曝光
  • 列表框代码
  • shell的简单实现
  • javascript definitive guide
  • async/await与promise(nodejs中的异步操作问题)
  • lua脚本语言零基础教程
  • Javascript中的this
  • shell脚本实际运用
  • jquery实战
  • 解决jQuery ajax请求在IE6中莫名中断的问题
  • python设颜色代码
  • 深入JavaScript高级语法
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设