在 PHP 中,使用 array_unique() 函數,根據特定鍵值對移除陣列重複項。呼叫函數時傳入數組作為參數,選擇排序方式作為第二個參數。此函數傳回一個新數組,其中重複項已根據指定的鍵值對移除。
如何在PHP 中根據特定鍵值對移除數組中的重複項
在PHP 中,使用 array_unique()
函數可以根據特定鍵值對移除陣列中的重複項。此函數接收一個數組作為參數,並傳回一個新數組,其中重複項已根據指定的鍵值對移除。
用法:
$array = [ ['name' => 'John', 'age' => 30], ['name' => 'Mary', 'age' => 25], ['name' => 'John', 'age' => 30], ['name' => 'Bob', 'age' => 20], ]; $uniqueArray = array_unique($array, SORT_REGULAR); print_r($uniqueArray);
輸出:
Array ( [0] => Array ( [name] => John [age] => 30 ) [1] => Array ( [name] => Mary [age] => 25 ) [2] => Array ( [name] => Bob [age] => 20 ) )
如上所示,array_unique()
根據鍵值對['name', 'age']
移除了陣列中的重複項。
可選參數:
array_unique()
函數的第二個參數指定如何比較陣列元素,有以下選項:
實戰案例:
#假設你有以下數組,其中包含來自不同訂單的訂單項目:$orders = [ ['id' => 1, 'item_id' => 1, 'quantity' => 2], ['id' => 2, 'item_id' => 2, 'quantity' => 1], ['id' => 3, 'item_id' => 1, 'quantity' => 3], ];你可以使用以下程式碼根據訂單項目ID (
item_id) 和數量(
quantity) 去除重複項:
$uniqueOrders = array_unique($orders, SORT_REGULAR);這將建立一個新陣列
$uniqueOrders,其中每個訂單項目的
item_id 和
quantity 組合都是唯一的。
以上是如何在 PHP 中根據特定鍵值對移除數組中的重複項?的詳細內容。更多資訊請關注PHP中文網其他相關文章!