一、array_unique()函式
使用php的array_unique()函式允許你傳遞乙個陣列,然後移除重複的值,返回乙個擁有唯一值的陣列。這個函式大多數情況下都能工作得很好。但是,如果你嘗試在乙個大的陣列裡使用array_unique()函式,它會執行地慢一些。
二、array_flip()
有乙個比較好而且更快的函式array_flip()來替代使用array_unique()函式來建立唯一的陣列。這個魔法般的函式會交換陣列裡面每乙個元素的鍵和值,因為鍵值必須唯一,因此,你會得到跟array_unique()函式一樣的結果。
更快的方式實現php陣列去重
$array = array_flip(array_flip($array));
/* 使用array_merge()函式修復鍵值*/
$array = array_merge($array);
三、使用array_keys()
注意,這種修復陣列鍵值的方法比使用array_merge()函式稍微快了一點。你也可以在最後一步結合使用array_keys()函式(此函式返回翻轉後的值)。然後當你翻轉陣列的值,鍵值就會根據順序建立。
$array = array_flip($array);
/* 跟第乙個例子一樣,但是現在我們先提取陣列的鍵值 */
$array = array_keys($array);
四、自定義函式
/*** 刪除二維陣列中相同項的資料,(一般用於資料庫查詢結果中相同記錄的去重操作)
** @param array $_2d_array 二維陣列,類似:
* $tmparr = array(
* array('id' => 1, 'value' => '15046f5de5bb708e'),
* array('id' => 1, 'value' => '15046f5de5bb708e'),
* );
* @param string $unique_key 表示上述陣列的 "id" 鍵,或者 "value" 鍵
** @return mixed
*/function unique_2d_array_by_key($_2d_array, $unique_key) else }}
return $_2d_array;
}
php 陣列去重
一維陣列的重複項 使用array unique函式即可,使用例項如下 bb array unique aa print r bb 二維陣列的重複項 對於二維陣列咱們分兩種情況討論,一種是因為某一鍵名的值不能重複,刪除重複項 另一種因為內部的一維陣列不能完全相同,而刪除重複項,下面舉例說明 因為某一鍵...
php 陣列去重
一維陣列的重複項 使用array unique函式即可,使用例項如下 bb array unique aa print r bb 二維陣列的重複項 對於二維陣列咱們分兩種情況討論,一種是因為某一鍵名的值不能重複,刪除重複項 另一種因為內部的一維陣列不能完全相同,而刪除重複項,下面舉例說明 因為某一鍵...
php 陣列去重
對陣列元素進行去重,我們一般會使用array unique方法,使用這個方法可以把陣列中的元素去重。arr array 1,1,2,3,3,3,4,4,5,6,6,7,8,8,9,9,9 arr array unique arr arr array values arr print r arr 輸出...