PHP數組交集與差集函數

  • array_intersect() : 比較數組的鍵值(不比較鍵名),返回交集
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("e"=>"red","f"=>"green","g"=>"blue");
$newArr = array_intersect($a1, $a2);
print_r($newArr); //Array ( [a] => red [b] => green [c] => blue )
  • array_intersect_assoc() : 比較數組的鍵值和鍵名,返回交集
$a1 = array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2 = array("a"=>"red","b"=>"green","c"=>"blue");
$newArr = array_intersect_assoc($a1,$a2);
print_r($newArr); //Array ( [a] => red [b] => green [c] => blue )
  • array_intersect_key() : 比較數組的鍵名(不比較鍵值),返回交集
$a1 = array("a"=>"red","b"=>"green","c"=>"blue");
$a2 = array("a"=>"red","c"=>"blue","d"=>"pink");
$newArr = array_intersect_key($a1,$a2);
print_r($newArr); //Array ( [a] => red [c] => blue )
  • array_intersect_ukey() : 使用自定義方法方法比較數組的鍵名(不比較鍵值),返回交集
function myfunction($a,$b)
{
    if ($a===$b)
    {
        return 0;
    }
    return ($a>$b)?1:-1;
}

$a1 = array("a"=>"red","b"=>"green","c"=>"blue");
$a2 = array("d"=>"red","b"=>"green","e"=>"blue");
$newArr = array_intersect_ukey($a1, $a2, 'myfunction');
print_r($newArr); //Array ( [b] => green )
發佈了44 篇原創文章 · 獲贊 36 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章