當前位置: 首頁> 函數類別大全> array_diff_uassoc

array_diff_uassoc

用用戶提供的回調函數做索引檢查來計算數組的差集
名稱:array_diff_uassoc
分類:數組
所屬語言:php
一句話介紹:比較數組,返回差集(比較鍵名和鍵值,使用用戶自定義的鍵名比較函數)。

array_diff_uassoc 函數

適用PHP版本

PHP 5.3.0及以上版本

函數說明

該函數用於計算數組的差集,返回存在於第一個數組中的元素,而不在其它數組中的元素。它與array_diff()類似,但它會通過用戶自定義的回調函數對數組的鍵名進行比較。

函數語法

<span class="fun">array_diff_uassoc(array $array1, array $array2, array ...$arrays, callable $key_compare_func): array</span>

參數

  • array1 :第一個數組,用於比較的基礎數組。
  • array2, ...arrays :一個或多個數組,將與第一個數組進行比較。
  • key_compare_func :用於比較數組鍵的回調函數。該回調函數接收兩個參數,分別是兩個數組的鍵,並返回一個整數:如果第一個鍵小於、等於或大於第二個鍵,返回負數、零或正數。

返回值

返回一個數組,其中包含在第一個數組中出現的元素,但不出現在其他數組中的元素。數組的鍵保持原樣。

示例

$array1 = ["a" => 1, "b" => 2, "c" => 3]; $array2 = ["a" => 1, "b" => 2]; $result = array_diff_uassoc($array1, $array2, function($key1, $key2) {<br>
return strcmp($key1, $key2);<br>
});</p>
<p>print_r($result);<br>

示例代碼的說明

在這個示例中,$array1 和$array2 都是關聯數組。我們通過一個回調函數來比較它們的鍵。回調函數使用strcmp來比較鍵名,並返回結果。如果第一個鍵小於第二個鍵, strcmp返回負值;如果相等,返回0;如果第一個鍵大於第二個鍵,返回正值。最終, array_diff_uassoc返回一個數組,其中包含只存在於第一個數組的元素,且這些元素的鍵不在第二個數組中。

同類函數
  • 使用用戶自定義函數對數組中的每個元素做回調處理 array_walk

    array_walk

    使用用戶自定義函數對數組中的每個元素做回
  • 返回數組中當前的鍵/值對並將數組指針向前移動一步-本函數已自PHP 7.2.0 起廢棄。強烈建議不要使用本函數。 each

    each

    返回數組中當前的鍵/值對並將數組指針向前
  • 計算數組的交集,用回調函數比較數據 array_uintersect

    array_uintersect

    計算數組的交集,用回調函數比較數據
  • 新建一個數組 array

    array

    新建一個數組
  • 去掉數組中的某一部分並用其它值取代 array_splice

    array_splice

    去掉數組中的某一部分並用其它值取代
  • 彈出數組最後一個單元(出棧) array_pop

    array_pop

    彈出數組最後一個單元(出棧)
  • 返回單元順序相反的數組 array_reverse

    array_reverse

    返回單元順序相反的數組
  • 從數組中將變量導入到當前的符號表 extract

    extract

    從數組中將變量導入到當前的符號表
熱門文章