php中遍历数组方法 android软件开发教程

  次阅读 来源:互联网(转载协议) 2016-03-02 15:42 我要评论(0)

遍历数组有多种实现方法:

1、连续索引的数组:

实现连续数组的遍历很简单,因为数组的索引是连续的(0 1 2……),所以我们可以首先用count()函数计算出数组中元素的个数,然后建立一个for循环,如下:

$subject=array("maths","english","physics");

$num_elements=count($subject); //这时$num_elements的值为3

for ($i=0;$i<$num_elements; ++$i){

echo ("$subject[$i]

n");

}

结果为:

maths

english

physics

这里我们给$i赋了初值为0,是因为数组元素的索引默认为0 1 2,如果第一个元素的索引不为0,我们只需:

$subject=array(3=>"maths","english","physics");

$num_elements=count($subject)+3; //注意这里

for ($i=3;$i<$num_elements; ++$i){

echo ("$subject[$i]

n");

}

这里将$i赋了值3,同时$num_elements=count($subject)+3,这里很容易被忽视。

2 、非连续索引的数组:

$subject=array("m"=>"maths","e"=>"english","p"=>"physics");

这里建立了一个了数组,索引值分别为"m" "e " "p",这样的数组怎么遍历?

方法一:使用list()和each()函数组合

$subject=array("m"=>"maths","e"=>"english","p"=>"physics");

reset($subject); //把指针复位到第一个元素上

while (list($key,$value)=each($subject)){

echo "$key is $value

n"; }

方法二:使用foreach语句

$subject=array("m"=>"maths","e"=>"english","p"=>"physics");

foreach($subject as $key => $value){

echo "$key is $value

n";

}

?>

是不是比list()和each()简单。

foreach 与 list()each()组合的不同之处:

foreach 是在原来数组的拷贝上执行操作的。他的优点是不会影响当前数组指针的位置,缺点是对于一个很大的数组,复制所花的时间很长。

list() each()组合很明显用他遍历、之后,指针的位置改变了。

方法三:使用array_walk()函数遍历数组

array_walk()是让使用者自定义函数,处理阵列中的每一个元素。

$subject=array("maths","english","physics");

function printElement($element){

print ("$element

n");

}

array_walk($subject,"printElement");

以上是网为您介绍的php中遍历数组方法,希望对您有所帮助。

本站部分文章来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 第一批国家重点研发计划公布,旷视科技开启“五年行动”

    第一批国家重点研发计划公布,旷视科技开启“五年行动”

  • 让AI触手可及  Qualcomm携手创通联达推出全新终端侧AI开发套件

    让AI触手可及 Qualcomm携手创通联达推出全新终端侧AI开发套件

  • 长虹新款智能语音空调,告诉你空调也能玩Siri

    长虹新款智能语音空调,告诉你空调也能玩Siri

  • 品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

    品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

网友点评网友点评
阅读推荐阅读推荐

据外媒报道,STEER打造了首款完全自动驾驶停车技术,旨在使常规车辆转变为无人驾驶车辆。STEER的首款技术应用是4级自动驾驶及网络安全停车...

近日,美国软性机器抓手制造商 Soft Robotics 宣布,获得 2000 万美元的融资,本轮投资者包括 Scale Venture Partners,Calibrate Ventures...

据外媒报道,加州车管局发布了《2017自动驾驶脱离报告(California Autonomous Vehicle Disengagement Reports)》,其中谈及了脱离的具体...

用人机语音交互,来解决智能家居适老的问题;通过家庭门禁与安防套件、空气净化套件、可燃气体与有害气体监控套件等相互联动,在不同生活情...