php遍历多维数组
⑴ php中遍历二维数组的几种方式
?php
//使用for循环遍历
$arr2=array(array("张三","20","男"),array("李四","25","男"),array("王五","19","女"),array("赵六","25","女"));
echo"<tableborder=2bordercolor=red><tr><td>姓名</td><td>年龄</td><td>性别</td></tr>";
for($i=0;$i<4;$i++){
echo"<tr>";
for($j=0;$j<3;$j++){
echo"<td>";
echo$arr2[$i][$j];
echo"</td>";
}
echo"</tr>";
echo"<br>";
}
echo"</table>";
?>
//使用foreach遍历
<?php
$arr=array('one'=>array('name'=>'张三','age'=>'23','sex'=>'男'),
'two'=>array('name'=>'李四','age'=>'43','sex'=>'女'),
'three'=>array('name'=>'王五','age'=>'32','sex'=>'男'),
'four'=>array('name'=>'赵六','age'=>'12','sex'=>'女'));
foreach($arras$k=>$val){
echo$val['name'].$val['age'].$val['sex']."<br>";
}
echo"<p>";
?>
<?php
$arr=array('one'=>array('name'=>'张三','age'=>'23','sex'=>'男'),
'two'=>array('name'=>'李四','age'=>'43','sex'=>'女'),
'three'=>array('name'=>'王五','age'=>'32','sex'=>'男'),
'four'=>array('name'=>'赵六','age'=>'12','sex'=>'女'));
foreach($arras$key=>$value){
foreach($valueas$key2=>$value2){
echo$value2;
}
echo"<br>";
}
?>
⑵ PHP 遍历多维数组,获取指定的值
function getKey($arr,$key){
return is_array($arr[$key])?implode(',',$arr[$key]):$arr[$key];
}
$arr=Array ( 'name'=>'张三',
Array('phone' => Array('188','177','166')),
Array('sex' => '男') );
echo getKey($arr,'name');
echo getKey($arr,'phone');
⑶ php中二维甚至多维数组遍历怎么使用while-list—each呢
今天刚好遇到这个问题,发现书上的例子while-list—each遍历多维数组并没有说到,自己刚开始尝试时候都没有成功,后来琢磨了下,发现代码是这样的
下面以三维数组为例:
<?php
$array=array(
array(
array('1','张三','A公司','北京市','01012345678','[email protected]'),
array('2','李四','B公司','天津市','02012345678','[email protected]'),
array('3','王五','C公司','上海市','02112345678','[email protected]')
),
array(
array('1','张三','市场部','5000'),
array('2','李四','客服部','4000'),
array('3','王五','售后部','3000'),
array('4','马六','行政部','2000')
),
array(
array('1','张三','市场部经理'),
array('2','李四','客服部经理'),
array('3','王五','售后部经理'),
array('4','马六','行政部经理')
)
);
/**
while遍历数组
**/
while(list($a,$b)=each($array)){
while(list($c,$d)=each($b)){
while(list($name,$value)=each($d)){
echo$name.' : '.$value.'<br/>';
}
echo'------------------------------<br/>';
}
}
?>
执行结果:
0:1
1:张三
2:A公司
3:北京市
4:01012345678
5:[email protected]
------------------------------
0:2
1:李四
2:B公司
3:天津市
4:02012345678
5:[email protected]
------------------------------
0:3
1:王五
2:C公司
3:上海市
4:02112345678
5:[email protected]
------------------------------
0:1
1:张三
2:市场部
3:5000
------------------------------
0:2
1:李四
2:客服部
3:4000
------------------------------
0:3
1:王五
2:售后部
3:3000
------------------------------
0:4
1:马六
2:行政部
3:2000
------------------------------
0:1
1:张三
2:市场部经理
------------------------------
0:2
1:李四
2:客服部经理
------------------------------
0:3
1:王五
2:售后部经理
------------------------------
0:4
1:马六
2:行政部经理
------------------------------
⑷ php用foreach遍历二维数组
$myArr=array("fruit"=>array("apple","orange","grape"),"animal"=>array("dog","pig","cat"));
foreach($myArr as $key=>$val) {
echo $key.":";
foreach($val as $index=>$content) {
echo $content." ";
}
echo "<br/>";
}
⑸ PHP多维数组遍历方法(2种实现方法)
本文实例讲述了PHP多维数组遍历方法。分享给大家供大家参考,具体如下:
方法一:
$a=array('fruits'=>array('a'=>'orange',
'b'=>'grape',c=>'apple'),
'numbers'=>array(1,2,3,4,5,6),
'holes'=>array('first',5=>'second','third')
);
foreach($a
as
$list=>$things){
if(is_array($things)){
foreach($things
as
$newlist=>$counter){
echo
"key:".$newlist."<br/>"."value:".$counter."<br/>";
}
}
}
方法二:
function
MulitarraytoSingle($array){
$temp=array();
if(is_array($array)){
foreach
($array
as
$key=>$value
)
{
if(is_array($value)){
MulitarraytoSingle($value);
}
else{
$temp[]=$value;
}
}
}
}
希望本文所述对大家PHP程序设计有所帮助。
⑹ php一个三维数组foreach如何遍历
数组遍历就用foreach了。三维只是遍历三次而已。原理是一样。比如
$arr=array(array(array(1)));
foreach($arras$key=>$value){
foreach($valueas$k=>$v){
foreach($vas$k3=>$v3){
var_mp($v3);
}
}
}
//最后输出的就是最里面的1了
⑺ PHP遍历多维数组
你的意思是用户输入nickname比如输'user2'然后你这边取user2对应的password吗?
$data=[
'user'=>[
""=>[
"nickname"=>"user1",
"userName"=>"username",
"passWord"=>"password",
"status"=>1,
],
""=>[
"nickname"=>"user2",
"userName"=>"username",
"passWord"=>"password",
"status"=>1,
],
]
];
//第一种情况是user数组里有多个叫user2的nickname,这样查出的password也会有多个,所以就需要循环来处理了
$nickname='user2';//这里是用户输入的值
$password=[];
foreach($data['user']as$val){
if($val['nickname']==$nickname){
$password[]=$val['passWord'];
}
}
print_r($password);
//第二情况就是user数组里只会有一个叫user2的nickname,这样只会查出一个password
$nickname='user2';//这里是用户输入的值
$user=array_column($data['user'],null,'nickname');
$password=$user[$nickname]['passWord'];
echo$password;
⑻ PHP如何遍历这个简单样式的三维数组数组,如何操作
假如你的数组叫做$arr,下面的代码数出你需要的:
<?php
$n=count($arr[1]);
$m=count($arr);
for ($i=0;$i<$n;$i++){
for ($j=1;$j<$m;$j++) echo $arr[$j][$i];
echo '<br>';
}
?>