php读取数组

张映 发表于 2010-10-23

分类目录: php

标签:, , ,

php读取数组主要有以下三种方法:
1,用for

<?php
$one = array(1, 2, 3, 4);
$two = array(array("tank",12412433),
 array("ying",252523523),
 array("zhang",656452345));

for($i=0;$i<count($one);$i++){
 echo $one[$i]."<br>";
}

for($i=0;$i<count($two);$i++){
 for($j=0;$j<count($two[$i]);$j++){
 echo $two[$i][$j]."<br>";
 }
}

?>

刚接触php的时候,特别喜欢用,因为在学校的时候,学过C,根C里面的for循环差不多。不过for循环有一点不好,无法读取数组的下标。下标又是非常的重要。所以现在for用的很少了。

2,用foreach

$one = array(1, 2, 3, 4);

$two = array("test1" =>array('name'=>"tank","phone"=>12412433),
 "test2"  => array('name'=>"ying","phone"=>252523523),
 "test3" => array('name'=>"zhang","phone"=>656452345),);

foreach ($one as $k=>$v) {
 echo "key=".$k."&value=".$v."<br>";
}

foreach ($two as $k=>$v) {
 echo "key=$k<br>";
 foreach($v as $value){
 echo $value."<br>";
 }
}

用foreach呢,就解决了不能读取下标的问题了。在应用中就更为广泛了。

3,用list each

$one = array(1, 2, 3, 4);

$two = array("test1" =>array('name'=>"tank","phone"=>12412433),
 "test2"  => array('name'=>"ying","phone"=>252523523),
 "test3" => array('name'=>"zhang","phone"=>656452345),);

list($f, $s,$t) =  $one;
echo $f.$s.$t;

while (list($k, $v) =  each($one)) {
 echo "key=$k&v=$v<br>";
}

while (list($k, $v) =  each($two)) {
 while (list($key, $value) =  each($v)) {
 echo $value."<br>";
 }
}

list each结合使用的时候,其实根foreach差不多,只不过用list each,还是不习惯,感觉不是很爽。这三种方法,foreach是最佳选择。



转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/php/1067.html