在PHP中数组分为两类: 数字索引数组和关联数组。
其中数字索引数组和C语言中的数组一样,下标是为0,1,2…
而关联数组下标可能是任意类型,与其它语言中的hash,map等结构相似。
下面介绍PHP中遍历关联数组的几种方法:
方法1:foreach
foreach()是一个用来遍历数组中数据的最简单有效的方法。<?php
$sports = array(
'football' => 'good',
'swimming' => 'very well',
'running' => 'not good');
foreach ($sports as $key => $value) {
echo $key.": ".$value."
";
?>
输出结果:football: good
swimming: very well
running: not good
方法2:each<?php
$sports = array(
'football' => 'good',
'swimming' => 'very well',
'running' => 'not good');
while ($elem = each($sports)) {
echo $elem['key'].": ".$elem['value']."
";
?>
方法3:list & each<?php
$sports = array(
'football' => 'good',
'swimming' => 'very well',
'running' => 'not good');
while (list($key, $value) = each($sports)) {
echo $key.": ".$value."
";
?>
方法4:while() 和 list(),each()配合使用。<?php
$urls= array('aaa','bbb','ccc','ddd');
while(list($key,$val)= each($urls)) {
echo "This Site url is $val.
";
}
?>
显示结果:This Site url is aaa
This Site url is bbb
This Site url is ccc
This Site url is ddd
方法5:for()<?php
$urls= array('aaa','bbb','ccc','ddd');
for ($i= 0;$i< count($urls); $i++){
$str= $urls[$i];
echo "This Site url is $str.
";
}
?>
显示结果:This Site url is aaa
This Site url is bbb
This Site url is ccc
This Site url is ddd