首頁 後端開發 php教程 PHP二维数组的去重问题解析_php技巧

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

May 17, 2016 am 09:16 AM
二維數組 去重

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

复制代码 代码如下:

//二维数组去掉重复值
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);
?>
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

揭露Pandas中高效率的資料去重方法:快速去除重複資料的技巧 揭露Pandas中高效率的資料去重方法:快速去除重複資料的技巧 Jan 24, 2024 am 08:12 AM

Pandas去重方法大揭密:快速、有效率的資料去重方式,需要具體程式碼範例在資料分析和處理過程中,經常會遇到資料中存在重複的情況。重複資料可能會對分析結果產生誤導,因此去重是一個非常重要的工作環節。在Pandas這個強大的資料處理庫中,提供了多種方法來實現資料去重,本文將介紹一些常用的去重方法,並附上特定的程式碼範例。基於單列去重最常見的情況是根據某一列的值是否重

Java開發中如何優化集合排序去重效能 Java開發中如何優化集合排序去重效能 Jul 02, 2023 am 11:25 AM

Java開發中,集合排序和去重是常見的需求。然而,在處理大數據集合時,效能往往會成為一個問題。本文將介紹一些最佳化技巧,幫助提升集合排序和去重的效能。一、使用適當的資料結構在Java中,最常用的資料結構是ArrayList和HashSet。 ArrayList適用於需要保持元素順序的情況,而HashSet則適用於需要去重的情況。在排序和去重的場景中,我們可以使用

php數組二維怎麼轉一維數組 php數組二維怎麼轉一維數組 Aug 03, 2023 am 11:14 AM

php數組二維轉一維數組的方法:1、使用循環遍歷,使用循環遍歷二維數組,將每個元素添加到一維數組中;2、使用“array_merge”函數,可以將多個數字組合併為一個數組,將二維數組當作參數傳遞給“array_merge”函數,將其轉換為一維數組;3、使用“array_reduce”函數,可以將數組中的所有值通過一個回調函數來處理,並最後返回一個結果。

word去重怎麼操作 word去重怎麼操作 Mar 20, 2024 pm 02:13 PM

我們有時候在使用word辦公室軟體進行文件操作和編輯的時候,有些內容是重複的,我們如何才能快速找到重複輸入的信息,之後將重複內容刪除呢?在Excel表格裡很輕易就可以找到重複項,但在word文件裡你會找重複的內容嗎?下邊,我們就分享word去重的方法,讓你能夠快速找到重複內容,並進行編輯操作。首先,開啟一個新的Word文檔,然後在文檔中輸入一些內容。可以考慮插入一些重複的部分,這有助於進行操作示範。 2.我們要找到重複的內容,需要點選選單列【開始】-【尋找】工具,在下拉式選單選擇【進階查找】,點

pandas去重有哪些方法 pandas去重有哪些方法 Nov 22, 2023 am 11:55 AM

pandas去重的方法有:1.使用drop_duplicates()方法;2、使用duplicated()方法;3、使用unique()方法;4、使用value_counts()方法。詳細介紹:1、使用drop_duplicates()方法,用於刪除資料框中重複的行並傳回一個新的資料框,它可以設定參數來控制如何進行去重,例如指定去重後的保留順序、去重時的比較列等等。

如何使用PHP中的array_sum函數計算二維數組中某一列元素的總和 如何使用PHP中的array_sum函數計算二維數組中某一列元素的總和 Jun 26, 2023 pm 12:45 PM

在PHP程式設計中,array_sum函數是一個非常實用的函數,它可以計算陣列中所有元素的總和。然而,當我們需要計算二維數組中某一列元素的總和時,可能會遇到些許麻煩。本文將介紹如何使用PHP中的array_sum函數計算二維陣列中某一列元素的總和。首先,我們需要了解二維數組的概念。二維數組就是一個包含了多個數組的數組,可以把它看成是一張表格。每個數組都代表了表格

PHP數組打亂順序後如何進行去重操作? PHP數組打亂順序後如何進行去重操作? May 02, 2024 pm 01:33 PM

PHP中可以透過以下步驟打亂數組順序後進行去重操作:使用shuffle()函數打亂數組順序。使用array_unique()函數對陣列進行去重,移除重複元素。

php 二維數組怎麼反轉 php 二維數組怎麼反轉 Dec 26, 2022 am 09:38 AM

php反轉二維數組的方法:1、建立一個php範例檔;2、定義一個二維數組;3、透過「array_reverse($a,true);」函數反轉數組;4、使用「print_r」列印反轉後的二維數組即可。

See all articles