您的位置:

php去除二维数组中相同的元素,php数组去除指定元素

本文目录一览:

php如何去掉二维数组中重复的元素?

有点麻烦,不过可以实现:

$arr=array("1"=array("a","b"),"2"=array("a","c"),"3"=array("a","b"));

foreach($arr as $k=$v){

$arr[$k]=implode(' ',$v);

}

$arr=array_unique($arr);

foreach($arr as $k=$v){

$arr[$k]=explode(' ',$v);

}

print_r($arr);

php如何删除两个数组中相同的元素

php如何去除数组中相同的元素

如何去除数组中相同的元素?在php手册中有这样写

array_unique(PHP

4

=

4.0.1)

array_unique

--

移除数组中重复的值

说明

array

array_unique

(

array

array)

array_unique()

接受

array

作为输入并返回没有重复值的新数组。

注意键名保留不变。array_unique()

先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的

array

中同一个值的第一个出现的键名会被保留。

注:

当且仅当

(string)

$elem1

===

(string)

$elem2

时两个单元被认为相同。就是说,当字符串的表达一样时。

第一个单元将被保留。

例子

1.

array_unique()

例子

?php

$input

=

array

("a"

=

"green",

"red",

"b"

=

"green",

"blue",

"red");

$result

=

array_unique

($input);

print_r($result);

?

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]["litpic"] =$array[1];

$temp2[$k]["title"] =$array[2];

$temp2[$k]["address"] =$array[3];

$temp2[$k]["starttime"] =$array[4];

$temp2[$k]["endtime"] =$array[5];

$temp2[$k]["classid"] =$array[6];

大概就这样啦。

PHP二维数组如何实现去除重复项

PHP数组去除重复项有个内置函数array_unique(),但是php的array_unique函数只适用于一维数组,对多维数组并不适用,不过你可以在二维数组中的值,用array_unique()即可。

比如:

$array = array(array(1,1,2),array(2,3,4,3));

$temp_array = array();

foreach($array as $key=$value){

$temp_array[$key] = array_unique($value);

}

$array = $temp_array;

PHP二维数组去重复,求大神帮忙。

?php

//假设这个数组为 $arr ,建立一个目标数组 $res ,遍历$arr

$res = array();

foreach($arr as $v){

    //先判断一下现在遍历的数组是否已经存在于目标数组

    if(isset($res[$v['doctor_uid']])){

        //已经存在的话需要判断 answer_num 的值和已存的值的大小

        if($v['answer_num']  $res[$v['doctor_uid']]['answer_num']){

            //当当前遍历的数组的  answer_num 值大于 $res 数组中已存的时候更新这个数组

            $res[$v['doctor_uid']] = $v;

        }

    }

    else{//当不存在的时候新增进去

        $res[$v['doctor_uid']] = $v;

    }

}

//经过上面的遍历 $res 即为去除重复uid的结果集,因为目前返回回来的是下表为uid的数组,此处改成下表从0开始

$res = array_value($res);