这个代码:<center><?php $language=array("ASP","PHP","JSP");list($a,$b,$c,$d)=each($language);echo $a,"<BR>",$b,"<BR>",$c,"<BR>",$d;?></center>输出结果为什么只有:0ASPc和d的值为什么不输出值呢?难道list()函数只能用来给两个变量赋值吗?请给一个给多个变量赋值的例子,谢谢了!!!
1 回答
不负相思意
TA贡献1777条经验 获得超10个赞
list($key,$value) 和each()一起使用是将数组当前指针所指向单元的键/值对分别赋值给变量$key,$value
注意:是当前单元的噢!
下面说说 list()的功能和作用
在老版本的PHP中list()是和each()一起用来遍历数组的,但是在现在流行PHP5中已经被foreach($array as $key=>$value)给代替,所以list()可以说已经没有什么作用。但是你试图将数组的前面几个元素的值赋给list()括号中所列的变量时还是有点用的,比如楼上的同志给你的回答!
下面说说list()和each()结合具体怎么用
首先前提是在老版本PHP中list()假设数组的索引是数字并且索引数字从O开始,我在PHP5中测试发现字符索引也可以
而each()会将作用的数组的当前单元的健/值对返回,并且将数组指针向下移动一个位置,这个很重要!其实到这里已经解决了你的问题。
下面我们来用list()和each()输出一个数组吧
<?php
$language=array("ASP","PHP","JSP");
while((list($key,$value)=each($language))){
echo $key."=>".$value;
echo "<br/>";
}
?>
很简单吧!
添加回答
举报
0/150
提交
取消