我有了國家的數組:數組相交在數組中的鍵?
array(
'AF'=>'AFGHANISTAN',
'AL'=>'ALBANIA',
'DZ'=>'ALGERIA',
'AS'=>'AMERICAN SAMOA',
);
和我有了一些鍵在它
array('AL', 'DZ');
我要打電話,將採取兩個數組作爲參數的函數另一個數組並返回
array(
'AL'=>'ALBANIA',
'DZ'=>'ALGERIA',
);
我知道PHP內置函數比較鍵或值,但似乎這些功能都指望你哈有兩個1D陣列或兩個2D陣列。
我可以遍歷array_keys()
的第一陣列和做每個鍵in_array()
檢查,但似乎真的inefficent ...
我不得不看兩次,但這是一個非常好的簡短解決方案。 +1 – 2012-07-25 07:35:03
@deceze - 好的解決方案 - 是否有一種有效的方法來計算新數組中的所有值是否匹配(例如,在這裏檢查:$ selection = array('AL','AF','DZ',' AS'); – JM4 2013-07-16 16:48:30
@ JM4是的,做一個'diff'而不是'intersect'。 – deceze 2013-07-16 16:56:33