Home  >  Article  >  Backend Development  >  How to remove duplicate values ​​from a two-dimensional array in PHP_PHP Tutorial

How to remove duplicate values ​​from a two-dimensional array in PHP_PHP Tutorial

WBOY
WBOYOriginal
2016-07-13 10:34:00973browse

PHP array has a built-in function array_unique() for removing duplicate items, but PHP's array_unique function only applies to one-dimensional arrays, not multi-dimensional arrays. The following provides an array_unique function for a two-dimensional array.

I wrote an article about array deduplication before, but it was limited to one-dimensional arrays. The following functions can be used for two-dimensional arrays:

//二维数组去掉重复值
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;
}

If you want to retain the key values ​​of the array, you can use the following function:

//二维数组去掉重复值  并保留键值
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];
		$temp2[$k]["ename"] =$array[7];
	}
    return $temp2;
}

That’s probably it.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/752357.htmlTechArticlePHP array has a built-in function array_unique() to remove duplicate items, but php's array_unique function only applies to one-dimensional arrays , is not applicable to multi-dimensional arrays. The following provides a two-dimensional array...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn