使用物件數組時,可能需要將多個數組合併為一個數組,同時確保消除重複值價值觀。為了實現這一點,我們可以利用 PHP 內建數組函數的功能。
合併陣列
在組合兩個或多個陣列時,array_merge() 函數會派上用場。更多數組。它將第二個數組的元素附加到第一個數組,建立一個包含兩個數組中所有元素的新數組。在這種情況下,我們可以使用它將兩個輸入陣列 $array1 和 $array2 合併為一個陣列。
刪除重複項
刪除重複值,我們可以利用 array_unique() 函數。它會傳回一個新數組,其中僅包含輸入數組中的唯一值。重複項被識別並從結果中排除。
組合函數
透過組合這兩個函數,我們可以實現我們想要的目標。我們先使用 array_merge() 合併兩個輸入數組,然後套用 array_unique() 消除重複值。它的外觀如下:
$array = array_unique(array_merge($array1, $array2));
此程式碼片段將建立一個新陣列 $array,其中包含 $array1 和 $array2 中的唯一物件。重複的電子郵件將被刪除。
範例用法
考慮以下範例:
$array1 = [ (object) ["email" => "gffggfg"], (object) ["email" => "example@email.com"], (object) ["email" => "wefewf"], ]; $array2 = [ (object) ["email" => "example@email.com"], (object) ["email" => "wefwef"], (object) ["email" => "wefewf"], ]; $array = array_unique(array_merge($array1, $array2)); print_r($array);
此程式碼將產生下列輸出:
Array ( [0] => stdClass Object ( [email] => gffggfg ) [1] => stdClass Object ( [email] => example@email.com ) [2] => stdClass Object ( [email] => wefewf ) [3] => stdClass Object ( [email] => wefwef ) )
此程式碼會產生下列輸出:
如您所見,重複的電子郵件值「example@email.com」已從合併陣列中刪除。以上是如何在 PHP 中合併物件數組並刪除重複項?的詳細內容。更多資訊請關注PHP中文網其他相關文章!