『壹』 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多維數組中篩選出自己想要的數值並輸出
$ar = Array(
Array (
'log_data' => 4,
'log_result' => 0,
'log_time' => '2013-05-08 10:08:40'
),
Array (
'log_data' => 10018,
'log_result' => 2,
'log_time' => '2013-05-08 10:13:58',
),
Array (
'log_data' => 10018,
'log_result' => 2,
'log_time' => '2013-05-08 10:14:02',
),
Array (
'log_data' => 10003,
'log_result' => 50,
'log_time' => '2013-05-08 10:18:29',
),
);
foreach($ar as $item) {
@$res[$item['log_data']][strtok($item['log_time'], ' ')] += $item['log_result'];
}
print_r($res);
『叄』 PHP如何以鍵值對的方式在一個多維數組里做查找
?php
$arr = array('a' => 1, array('b' =>2), 'c' => 3, array(array('d' =>4), 'e' => 5));
echo searchKey($arr,4);
function searchKey($array,$value){
foreach($array as $key=>$row){
if(!is_array($row)){
if($row == $value){
$r = $key;
return $key;
}
}else{
$r = searchKey($row,$value);
if($r != -1){
return $r;
}
}
}
return -1;
}
?>
『肆』 php 多維數組查詢 ,根據一個值檢索指定數組,怎麼實現
//換成你的二維數組
$array=array(
array('key'=>'b','val'=>2),
array('key'=>'c','val'=>3),
array('key'=>'d','val'=>4),
array('key'=>'e','val'=>5),
);
$result=array_filter($array,'filter');
print_r($result);
functionfilter($v){
//換成你要的條件
return$v['key']=='c';
}
『伍』 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多維數組foreach取值
可以使用count函數來獲取第一維的元素個數
也可以使用count函數的遞歸形式獲取總元素個數
看以下示例:
<?php
$food = array('fruits' => array('orange', 'banana', 'apple'),
'veggie' => array('carrot', 'collard','pea'));
// recursive count
echo count($food, COUNT_RECURSIVE); // output 8
// normal count
echo count($food); // output 2
?>
foreach取出的應該是每個數組元素 你可以使用嵌套的foreach獲取每個元素
看以下示例:
$a = array();
$a[0][0] = "a";
$a[0][1] = "b";
$a[1][0] = "y";
$a[1][1] = "z";
foreach ($a as $v1) {
foreach ($v1 as $v2) {
echo "$v2\n";
}
}
『柒』 php處理多維數組怎麼獲取裡面值
2是指數組元素個數。
$a = array (
array(
"pid" => "4","number" => "1"
),
array(
"pid" => "5","number" => "1"
)
);
// 遍歷多維數組
foreach($a as $b){
foreach($b as $key_pid => $value_number){
echo $key_pid;
echo $value_number;
}
}