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