PHP中each与list用法分析,phpeachlist用法
本文实例分析了PHP中each与list用法。分享给大家供大家参考,具体如下:
1.each的用法
先看API
array each ( array &$array )
api里是这么描述的:each — 返回数组中当前的键/值对并将数组指针向前移动一步
我们先来看看返回的数组是怎么样的?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | <?php
$arr = array ( '你' , '若' , '安' , '好' , '便' , '是' , '晴' , '天' );
print_r(each( $arr ));
print_r(each( $arr ));
echo '<hr />' ;
reset( $arr );
for (; $tmp =each( $arr );){
echo $tmp [0], '~' , $tmp [1], '<br />' ;
}
?>
|
登录后复制
2.list的用法
先看api是怎么说的
像 array() 一样,这不是真正的函数,而是语言结构。list()用一步操作给一组变量进行赋值。
来看一个例子:
1 2 3 4 5 | <?php
list( $a , $b )= array (10,20);
echo $a , '~' , $b , '<br />' ;
?>
|
登录后复制
没错可以给一组变量赋值
再来看另外一个例子:
1 2 3 4 5 6 | <?php
list( $a , $b ,, $c )= array (2=>10,3=>20,4=>30,1=>40);
echo $a , '~' , $b , '~' , $c , '<br />' ;
?>
|
登录后复制
按照一般的想法应该会返回:10~20~40
为什么会返回这个notice~40~20呢?
答:这涉及到list的运行机制,list是这么赋值的
首先:不要管右边的数组,看List里面的变量,从左到右应该是 $a = arr[0] $b=arr[1] $c=arr[3]
然后:从右到左开始赋值,赋值的顺序是 $c=arr[3] $b=arr[1] $a=arr[0]
所以$c=20 $b = 40 因为没有arr[0],所以$a给了一个警告
3.用each和list实现数组的遍历
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?php
$arr = array ( '你' , '若' , '安' , '好' , '便' , '是' , '晴' , '天' );
for (;list( $k , $v )=each( $arr );){
echo $k , '~' , $v , '<br />' ;
}
?>
|
登录后复制
希望本文所述对大家PHP程序设计有所帮助。
您可能感兴趣的文章:
- PHP循环遍历数组的3种方法list()、each()和while总结
- PHP循环语句笔记(foreach,list)
- PHP 数组遍历方法大全(foreach,list,each)
- PHP中list()函数用法实例简析
- 深入php list()函数的详解
http://www.bkjia.com/PHPjc/1089952.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1089952.htmlTechArticlePHP中each与list用法分析,phpeachlist用法 本文实例分析了PHP中each与list用法。分享给大家供大家参考,具体如下: 1.each的用法 先看API array ea...