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";
}
}