首页 >php教程 >php手册 >php 遍历多维数组方法

php 遍历多维数组方法

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB原创
2016-06-13 09:48:071692浏览

在php中数组分类很多种,如一维数组,二维数组,三维或多维数组,下面我来给大家介绍php 遍历多维数组,有需要的朋友可参考。

在php遍历数组有三个函数foreach、each、list & each下面我们看它们是如何遍历多维数组的。

先看一个遍历二维数组

 代码如下 复制代码
 代码如下 复制代码

$sports = array( 
    'football' => 'good', 
    'swimming' => 'very well', 
    'running'  => 'not good' 
    ); 
     
foreach ($sports as $key => $value) { 
    echo $key.": ".$value."
"; 

?>

$sports = array( 
    'football' => 'good', 
    'swimming' => 'very well', 
    'running'  => 'not good' 
    ); 
     
foreach ($sports as $key => $value) { 
    echo $key.": ".$value."
"; 

?>

下面看遍历三维数组

例1
 代码如下 复制代码

 function arr_fun($arr){
       if(is_array($arr)){
         foreach($arr as $v){
            if(is_array($v)){
            arr_fun($v);
            }else{
            echo $v."
";
            }
         }
       }else{
         echo $arr."
";
       }
   }

 代码如下 复制代码
 function arr_fun($arr){
       if(is_array($arr)){
         foreach($arr as $v){
            if(is_array($v)){
            arr_fun($v);
            }else{
            echo $v."
";
            }
         }
       }else{
         echo $arr."
";
       }
   }

例2

 代码如下
 代码如下 复制代码

/*
*  -------------------------------------------------
*   Url    : www.bKjia.c0m
*   Date   : 2011-03-09
*  -------------------------------------------------
*/
function arr_foreach ($arr)
{
 if (!is_array ($arr))
 {
  return false;
 }
 
 foreach ($arr as $key => $val )
 {
  if (is_array ($val))
  {
   arr_foreach ($val);
  }
  else
  {
   echo $val.'
';
  }
 }
}
$arr1 = array (1=>array(11,12,13,14=>array(141,142)),2,3,4,5);
echo '

';<br>
print_r($arr1);<br>
echo '<pre class="brush:php;toolbar:false">';<br>
arr_foreach ($arr1);<br>
?>
<p>输出结果</p>
<p>Array<br>
(<br>
    [1] => Array<br>
        (<br>
            [0] => 11<br>
            [1] => 12<br>
            [2] => 13<br>
            [14] => Array<br>
                (<br>
                    [0] => 141<br>
                    [1] => 142<br>
                )<br>
        )<br>
    [2] => 2<br>
    [3] => 3<br>
    [4] => 4<br>
    [5] => 5<br>
)<br>
11<br>
12<br>
13<br>
141<br>
142<br>
2<br>
3<br>
4<br>
5</p>
复制代码

 代码如下 复制代码

$sports = array(
    'football' => 'good',
    'swimming' => 'www.bKjia.c0m',
    'running'  => 'not good'
);

while (list($key, $value) = each($sports)) {
    echo $key.": ".$value."
";
}
?>

/*
*  -------------------------------------------------
*   网址    : www.bKjia.c0m
*   日期   : 2011-03-09
*  -------------------------------------------------
*/
函数 arr_foreach ($arr)
{
 if (!is_array ($arr))
 {
  返回错误;
 }
 
 foreach ($arr as $key => $val )
 {
  if (is_array ($val))
  {
   arr_foreach ($val);
  }
  否则
  {
   echo $val.'
';
  }
 }
}
$arr1 = 数组 (1=>数组(11,12,13,14=>数组(141,142)),2,3,4,5);
echo '
';<br>
print_r($arr1);<br>
echo '<pre class="brush:php;toolbar:false">';<br>
arr_foreach ($arr1);<br>
?>
输出结果 数组

    [1] =>数组
        (
            [0] => 11
            [1] => 12
            [2] => 13
            [14] =>数组
                (
                    [0] => 141
                    [1] => 142
                )
        )
    [2] => 2
    [3] => 3
    [4] => 4
    [5] => 5
)
11
12
13
141
142
2
3
4
5 利用列表与每趟二维码  代码如下 复制代码 $sports = 数组(
    '足球' => '好',
    '游泳' => 'www.bKjia.c0m',
    '运行' => '不好'
); while (list($key, $value) = every($sports)) {
    echo $key.": ".$value."
";
}
?>
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn