首页 >后端开发 >php教程 >如何使用foreach()遍历二维数组和多维数组

如何使用foreach()遍历二维数组和多维数组

伊谢尔伦
伊谢尔伦原创
2017-06-22 17:38:537397浏览

第一种类型

想用foreach()遍历整个二维数组

$team = array('lk','ok');
$book = array('linux服务器配置与管理',$team);
 
foreach($book as $k=>$val) //for $book each $value( as )
echo $k.'=>'.$val.'';

输出结果是:

0=>linux服务器配置与管理
1=>Array

当然,其实我是想要所有具体内容,而不是输出array。。。

所以应该采用如下做法,加入一个判断语句

$team = array('lk','ok');
$book = array('linux服务器配置与管理',$team);
 
foreach($book as $k=>$val) //意思是for $book each $value( as )
if( is_array($val) ) foreach( $val as $value) echo $value.'';
else echo $k.'=>'.$val.'';

则输出为:

0=>linux服务器配置与管理
lk
ok

echo "<br>";
echo "<h1>php遍历二维数组</h1>";
//$team = array(&#39;lk&#39;,&#39;ok&#39;);
//$book = array(&#39;linux服务器配置与管理&#39;,$team);
$arr = array(
array(&#39;name&#39;=>&#39;系统配置&#39;,&#39;url&#39;=>&#39;?action=config&do=config&#39;),
array(&#39;name&#39;=>&#39;验证码配置&#39;,&#39;url&#39;=>&#39;?action=config&do=seccode&#39;),
array(&#39;name&#39;=>&#39;模板管理&#39;,&#39;url&#39;=>&#39;?action=config&do=tpl&#39;),
array(&#39;name&#39;=>&#39;帐号管理&#39;,&#39;url&#39;=>&#39;?action=admin&do=list&#39;),
array(&#39;name&#39;=>&#39;添加帐号&#39;,&#39;url&#39;=>&#39;?action=admin&do=add&#39;));
foreach($arr as $k=>$val){
  echo "name:".$val["name"]."/n";
}

第二种类型

foreach()遍历多维数组

<?php 
//声明一个三维数组 
$info=array( 
"user"=>array( 
array(1,"zhangsan",20,"nan"), 
array(2,"lisi",20,"nan"), 
array(3,"wangwu",25,"nv") 
), 
"score"=>array( 
array(1,100,98,95,96), 
array(2,56,98,87,84), 
array(3,68,75,84,79) 
), 
"connect"=>array( 
array(1,&#39;2468246&#39;,"salkh@bbs.com"), 
array(2,&#39;343681643&#39;,"aikdki@sina.com"), 
array(3,&#39;3618468&#39;,"42816@qq.com") 
) 
); 
//循环遍历,输出一个表格 
foreach($info as $tableName=>$table){ 
echo "<table align=&#39;center&#39; border=&#39;1&#39; width=300>"; 
echo "<caption><h1>".$tableName."</h1></caption>";//以每个数组的键值作为表名 
foreach($table as $row){ 
echo "<tr>"; 
foreach($row as $col){ 
echo "<td>".$col."</td>"; 
} 
echo "</tr>"; 
} 
echo "</table>"; 
} 
?>

以上是如何使用foreach()遍历二维数组和多维数组的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn