Home Backend Development PHP Tutorial PHP二维数组的去重问题解析_php技巧

PHP二维数组的去重问题解析_php技巧

May 17, 2016 am 09:16 AM
Two-dimensional array Remove duplicates

之前写了一篇关于数组去重的文章,但是仅限于一维数组。下面的函数可以用于二维数组:

复制代码 代码如下:

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

大概就这样啦。
二维数组去重
复制代码 代码如下:

$arr = array(
array('id' => 1,'name' => 'aaa'),
array('id' => 2,'name' => 'bbb'),
array('id' => 3,'name' => 'ccc'),
array('id' => 4,'name' => 'ddd'),
array('id' => 5,'name' => 'ccc'),
array('id' => 6,'name' => 'aaa'),
array('id' => 7,'name' => 'bbb'),
);
function assoc_unique(&$arr, $key)
{
$rAr=array();
for($i=0;$i{
if(!isset($rAr[$arr[$i][$key]]))
{
$rAr[$arr[$i][$key]]=$arr[$i];
}
}
$arr=array_values($rAr);
}
assoc_unique(&$arr,'name');
print_r($arr);
?>
Statement of this Website
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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Revealing the efficient data deduplication method in Pandas: Tips for quickly removing duplicate data Revealing the efficient data deduplication method in Pandas: Tips for quickly removing duplicate data Jan 24, 2024 am 08:12 AM

The secret of Pandas deduplication method: a fast and efficient way to deduplicate data, which requires specific code examples. In the process of data analysis and processing, duplication in the data is often encountered. Duplicate data may mislead the analysis results, so deduplication is a very important step. Pandas, a powerful data processing library, provides a variety of methods to achieve data deduplication. This article will introduce some commonly used deduplication methods, and attach specific code examples. The most common case of deduplication based on a single column is based on whether the value of a certain column is duplicated.

How to optimize collection sorting and deduplication performance in Java development How to optimize collection sorting and deduplication performance in Java development Jul 02, 2023 am 11:25 AM

In Java development, collection sorting and deduplication are common requirements. However, performance often becomes an issue when dealing with large data collections. This article will introduce some optimization techniques to help improve the performance of collection sorting and deduplication. 1. Use appropriate data structures. In Java, the most commonly used data structures are ArrayList and HashSet. ArrayList is suitable for situations where the order of elements needs to be maintained, while HashSet is suitable for situations where duplication needs to be eliminated. In sorting and deduplication scenarios, we can use

How to convert a two-dimensional php array into a one-dimensional array How to convert a two-dimensional php array into a one-dimensional array Aug 03, 2023 am 11:14 AM

How to convert a php array from two dimensions to a one-dimensional array: 1. Use loop traversal to traverse the two-dimensional array and add each element to the one-dimensional array; 2. Use the "array_merge" function to merge multiple arrays into An array. Pass the two-dimensional array as a parameter to the "array_merge" function to convert it into a one-dimensional array; 3. Using the "array_reduce" function, you can process all the values ​​in the array through a callback function and finally return a result.

What are the methods to remove duplicates in pandas? What are the methods to remove duplicates in pandas? Nov 22, 2023 am 11:55 AM

The pandas deduplication methods are: 1. Use the drop_duplicates() method; 2. Use the duplicated() method; 3. Use the unique() method; 4. Use the value_counts() method. Detailed introduction: 1. Use the drop_duplicates() method to delete duplicate rows in the data frame and return a new data frame. It can set parameters to control how to perform deduplication, such as specifying the retention order and deduplication after deduplication. Time comparison columns and so on.

How to remove duplicates in word How to remove duplicates in word Mar 20, 2024 pm 02:13 PM

Sometimes when we use word office software to operate and edit files, some content is repeated. How can we quickly find the repeatedly entered information and then delete the repeated content? It is easy to find duplicates in an Excel spreadsheet, but will you find duplicates in a word document? Below, we will share how to remove duplicates in word, so that you can quickly find duplicate content and perform editing operations. First, open a new Word document and enter some content in the document. Consider inserting some repetitive parts to help demonstrate operations. 2. To find duplicate content, we need to click [Start]-[Search] tool in the menu bar, select [Advanced Search] in the drop-down menu, and click

How to use the array_sum function in PHP to calculate the sum of elements in a column of a two-dimensional array How to use the array_sum function in PHP to calculate the sum of elements in a column of a two-dimensional array Jun 26, 2023 pm 12:45 PM

In PHP programming, the array_sum function is a very practical function that can calculate the sum of all elements in an array. However, when we need to calculate the sum of a column of elements in a two-dimensional array, we may encounter some trouble. This article will introduce how to use the array_sum function in PHP to calculate the sum of elements in a column of a two-dimensional array. First, we need to understand the concept of two-dimensional arrays. A two-dimensional array is an array containing multiple arrays, which can be regarded as a table. Each array represents a table

How to perform deduplication operation after the PHP array is shuffled? How to perform deduplication operation after the PHP array is shuffled? May 02, 2024 pm 01:33 PM

In PHP, you can use the following steps to disrupt the order of the array and then perform deduplication operations: Use the shuffle() function to disrupt the order of the array. Use the array_unique() function to deduplicate the array and remove duplicate elements.

How to reverse a two-dimensional array in php How to reverse a two-dimensional array in php Dec 26, 2022 am 09:38 AM

How to reverse a two-dimensional array in php: 1. Create a php sample file; 2. Define a two-dimensional array; 3. Reverse the array through the "array_reverse($a,true);" function; 4. Use "print_r" to print Just reverse the two-dimensional array.

See all articles