php多維數組去重
❶ php二維數組去重
方法一:
//二維數組去掉重復值function array_unique_fb($array2D){ foreach ($array2D as $v){ $v=join(',',$v); //降維,也可以用implode,將一維數組轉換為用逗號連接的字元串 $temp[]=$v; } $temp=array_unique($temp); //去掉重復的字元串,也就是重復的一維數組 foreach ($temp as $k => $v){ $temp[$k]=explode(',',$v); //再將拆開的數組重新組裝 } return $temp;}
方法二:
//二維數組去掉重復值,並保留鍵值function array_unique_fb($array2D){ foreach ($array2D as $k=>$v){ $v=join(',',$v); //降維,也可以用implode,將一維數組轉換為用逗號連接的字元串 $temp[$k]=$v; } $temp=array_unique($temp); //去掉重復的字元串,也就是重復的一維數組 foreach ($temp as $k => $v){ $array=explode(',',$v); //再將拆開的數組重新組裝 //下面的索引根據自己的情況進行修改即可 $temp2[$k]['id'] =$array[0]; $temp2[$k]['title'] =$array[1]; $temp2[$k]['keywords'] =$array[2]; $temp2[$k]['content'] =$array[3]; } return $temp2;}
❷ php 二維數組值去重~
那你也有可能輸出的是array(a,b,c) array(d,e) array(f),
你這根本就沒有規則啊
❸ PHP多維數組
<?php
$arr = ['a','b',['c','d']];
foreach($arr as $i){
if(is_array($i)){
foreach($i as $j){
echo $j;
}
} else {
echo $i;
}
}
用is_array()函數判斷當前從數組中取到的元素是不是數組,如果是數組,就再加一層循環
❹ 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
字數夠沒。
❻ php多維數組
查詢出來的數組襲就是
$a=array(array(1,"蘋果",1,"5元"),array(1,"蘋果",1,"5元"),array(1,"蘋果",1,"5元"));
$b=array(array(1,"白菜",2,"3元"),array(1,"白菜",2,"3元"));
分別查詢 $a 和 $b 後,用 $data = array('水果'=>$a,'蔬菜'=>$b) 就可以實現
❼ php 處理多維數組重復
試編寫代碼如下:
function mult_unique($array)
{
$return = array();
foreach($array as $key=>$v)
{
if(!in_array($v, $return))
{
$return[$key]=$v;
}
}
return $return;
}
$arr=array(
'pid'=>array(array('id'=>'1','name'=>'范德薩回','pid'=>'22')),
'name'=>array(array('id'=>'2','name'=>'浮點答','pid'=>'11')),
'type'=>array(array('id'=>'2','name'=>'浮點','pid'=>'11')),
);
echo '<pre>';
print_r(mult_unique($arr));
echo '</pre>';
❽ PHP新人 多維數組去重問題 求幫助
<?php
functiontest($data){
$tmp=array();
$i=0;
foreach($dataas$main_key=>$p){
foreach($pas$child_key=>$g){
$tmp[$main_key][$g["id"]]["name"][]=$g["name"];
$tmp[$main_key][$g["id"]]["price"][]=$g["price"];
}
}
$data=$tmp;
$tmp=array();
foreach($dataas$main_key=>$p){
foreach($pas$child_key=>$g){
$g["id"]=$child_key;
$tmp[$main_key][]=$g;
}
}
print_r($tmp);
}
$data=array('張三的購物單'=>array(array('id'=>'送給李四的禮物','name'=>'茶葉','price'=>50),
array('id'=>'送給王五的禮物','name'=>'月餅','price'=>60),
array('id'=>'送給李四的禮物','name'=>'茶葉蛋','price'=>20),
array('id'=>'送給王六的禮物','name'=>'茶葉','price'=>50),
array('id'=>'送給王五的禮物','name'=>'二鍋頭','price'=>100),
array('id'=>'送給李四的禮物','name'=>'湯圓','price'=>60)));
test($data);
?>
❾ php多維數組如何使用
php 多維數組與一維數組的使用方法一樣
可以遍歷、修改、添加等
例如:
<?php
$array = array('a'=>array('a1','a2'),'b'=>array('b1','b2'));
//遍歷數組回
foreach($array as $key=>$value){
foreach($value as $k=>$v){
echo $key.'=>'.$k.'--'.$v;
}
}
//修改數組
$array['a'] = array('a3','a4');
//添加
$arra['c'] = array('c1','c2');
?>
不過答,PHP有一些數組函數不適用於多維數組,所謂,有些功能需要特殊處理一下
比如:
PHP排序函數 sort()
❿ PHP創建多維數組
可以使用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";
}
}