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

array_udiff_uassoc

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

實例

比較兩個數組的鍵名和鍵值(使用用戶自定義函數進行比較),並返回差集:

 <span class="token php language-php"><span class="token delimiter important"><?php</span>
<span class="token keyword">function</span> <span class="token function-definition function">myfunction_key</span> <span class="token punctuation">(</span> <span class="token variable">$a</span> <span class="token punctuation">,</span> <span class="token variable">$b</span> <span class="token punctuation">)</span>
<span class="token punctuation">{</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span> <span class="token variable">$a</span> <span class="token operator">===</span> <span class="token variable">$b</span> <span class="token punctuation">)</span>
  <span class="token punctuation">{</span>
  <span class="token keyword">return</span> <span class="token number">0</span> <span class="token punctuation">;</span>
  <span class="token punctuation">}</span>
  <span class="token keyword">return</span> <span class="token punctuation">(</span> <span class="token variable">$a</span> <span class="token operator">></span> <span class="token variable">$b</span> <span class="token punctuation">)</span> <span class="token operator">?</span> <span class="token number">1</span> <span class="token punctuation">:</span> <span class="token operator">-</span> <span class="token number">1</span> <span class="token punctuation">;</span>
<span class="token punctuation">}</span>

<span class="token keyword">function</span> <span class="token function-definition function">myfunction_value</span> <span class="token punctuation">(</span> <span class="token variable">$a</span> <span class="token punctuation">,</span> <span class="token variable">$b</span> <span class="token punctuation">)</span>
<span class="token punctuation">{</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span> <span class="token variable">$a</span> <span class="token operator">===</span> <span class="token variable">$b</span> <span class="token punctuation">)</span>
  <span class="token punctuation">{</span>
  <span class="token keyword">return</span> <span class="token number">0</span> <span class="token punctuation">;</span>
  <span class="token punctuation">}</span>
  <span class="token keyword">return</span> <span class="token punctuation">(</span> <span class="token variable">$a</span> <span class="token operator">></span> <span class="token variable">$b</span> <span class="token punctuation">)</span> <span class="token operator">?</span> <span class="token number">1</span> <span class="token punctuation">:</span> <span class="token operator">-</span> <span class="token number">1</span> <span class="token punctuation">;</span>
<span class="token punctuation">}</span>

<span class="token variable">$a1</span> <span class="token operator">=</span> <span class="token keyword">array</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"a"</span> <span class="token operator">=></span> <span class="token string double-quoted-string">"red"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"b"</span> <span class="token operator">=></span> <span class="token string double-quoted-string">"green"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"c"</span> <span class="token operator">=></span> <span class="token string double-quoted-string">"blue"</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>
<span class="token variable">$a2</span> <span class="token operator">=</span> <span class="token keyword">array</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"a"</span> <span class="token operator">=></span> <span class="token string double-quoted-string">"red"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"b"</span> <span class="token operator">=></span> <span class="token string double-quoted-string">"green"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"c"</span> <span class="token operator">=></span> <span class="token string double-quoted-string">"green"</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>

<span class="token variable">$result</span> <span class="token operator">=</span><span class="token function"></span></span><mark> <span class="token function">array_udiff_uassoc</span> <span class="token punctuation">(</span> <span class="token variable">$a1</span> <span class="token punctuation">,</span> <span class="token variable">$a2</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"myfunction_key"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"myfunction_value"</span> <span class="token punctuation">)</span></mark><span class="token punctuation"></span> <span class="token punctuation">;</span>
<span class="token function">print_r</span> <span class="token punctuation">(</span> <span class="token variable">$result</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>
<span class="token delimiter important">?></span>

親自試一試

同類函數
  • 用用戶提供的回調函數做索引檢查來計算數組的差集 array_diff_uassoc

    array_diff_uassoc

    用用戶提供的回調函數做索引檢查來計算數組
  • 用回調函數對鍵名比較計算數組的差集 array_diff_ukey

    array_diff_ukey

    用回調函數對鍵名比較計算數組的差集
  • 使用用戶自定義函數對數組中的每個元素做回調處理 array_walk

    array_walk

    使用用戶自定義函數對數組中的每個元素做回
  • 使用用戶自定義的比較函數對數組中的鍵名進行排序 uksort

    uksort

    使用用戶自定義的比較函數對數組中的鍵名進
  • 將數組中的內部指針向前移動一位 next

    next

    將數組中的內部指針向前移動一位
  • 在數組開頭插入一個或多個單元 array_unshift

    array_unshift

    在數組開頭插入一個或多個單元
  • 計算數組的交集 array_intersect

    array_intersect

    計算數組的交集
  • 用回調函數比較數據來計算數組的差集 array_udiff

    array_udiff

    用回調函數比較數據來計算數組的差集
熱門文章