php -- 对象遍历

摘要:
对象遍历:foreach,遍历对象的公共属性,遍历属性数组,实现Iterator接口迭代器:该类实现Iterater接口current:获取当前数组元素的值$this-˃rabbit[$this-˃position]key:获取当前下标next:向下移动数组指针倒带:重置指针有效:判断当前指针是否有效,并使用key函数判断数组下标是否˂?

对象遍历:foreach,遍历对象的公有属性(将公有属性的值和属性名赋值给对应$value和$key)

遍历某一个属性的数组,实现Iterator接口

接口iterator:类实现Iterator接口

current:获取当前数组元素的值$this->hobby[$this->position]

key:获取当前下标

next:数组指针下移

rewind:重置指针

valid:判断当前指针是否有效,使用key函数判断数组下标

<?php
    //预定义接口
    class Person implementsIterator{
        //属性
        private $point = 0;
        protected $hobby = array('b' => '篮球','足球','台球','羽毛球');
        protected $school = array('北京','上海','广州','武汉','郑州','成都');
        //实现接口里的方法
        //获取当前数组元素当前指针位置的元素值
        public function current(){
            return $this->hobby[$this->point];
        }
        //获取当前数组元素当前指针的位置(数组下标)
        public function key(){
            return $this->point;
        }
        //数组的指针下移
        public function next(){
            $this->point++;
        }
        //重置数组指针
        public function rewind(){
            $this->point = 0;
        }
        //判断数组的指针是否有效
        public functionvalid(){
            //判断当前指针所指向的位置是否有值即可
            if(isset($this->hobby[$this->point])) return true;
            return false;
        }
    }
    //实例化对象
    $person = newPerson();
    //遍历
    foreach($person as $key => $value){
        echo $key . ':' . $value . '<br/>';
    }

免责声明:文章转载自《php -- 对象遍历》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇最受欢迎的Linux发行版, Manjaro折腾全记录C#读写Excel的几种方法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

php session存进去,取不出来

目录 一、检查 php.ini 二、查看 /var/tmp 是否有读写权限 ,如果没有: 三、检查 php-fpm 配置文件 四、重启 php-fpm 一、检查 php.ini vim /etc/php.ini 检查这几项: session.save_handler = files // session 的存储类型; session.auto_...

php检测文件只读、可写、可执行权限

例子:检测文件是否可读、可写、可执行。 复制代码代码示例: <?php$myfile = "./test.txt"; if (is_readable ($myfile)) {echo "此文件可读。", " ";} else {echo "此文件不可读.", "/n";}if (is_writable ($myfile)) {echo "此文件...

php防止表单重复提交

解决方案一:引入cookie机制来解决 提交页面代码如下a.php代码如下: <form name="form1" method="post" action="t2.php"> <p>说明 <input type="text" name="titile" /> </p> <p> <input...

PHP教程:PHPUnit学习笔记(四)断言详解

断言(Assertions)是PHPUnit提供的一系列对程序执行结果测试的方法。通俗的讲,就是断言执行程序结果为我们期待的值,如果不是则 测试失败,下面是断言方法的详细介绍,内容全部来翻译自PHPUnit的官方文档,部分方法官方介绍的很模糊,我根据官方的源码注释增加了说明和注释 assertArrayHasKey(mixed $key, array $a...

C:php-7.4.5-nts-Win32-vc15-x64php-cgi.exe

win10两台电脑,一台装了vs2019 iis 正常,另一台没装iisphp环境出现些故障,深查原因,出现如下警告,现代码部分 PHP Warning:  'vcruntime140.dll' 14.0 is not compatible with this PHP build linked with 14.16 in Unk 访问IIS 站点报错: H...

高级PHP开发:利用PHPEMS搭建在线考试平台

今天给大家分享一个小技巧,就是利用PHP ems搭建在线考试平台;希望能给你给予帮助; 在给大家分享之前,这里推荐下我自己建的PHP开发-VIP资料出售平台 :638965404,不管你是小白还是大牛,我都挺欢迎,不定期分享干货,包括2017最新的PHP企业案例学习资料和零基础入门教程,以及面试宝典,欢迎初学和进阶中的小伙伴,大家一起交流学习,共同进步。...