2013-05-07 55 views
-3

我有兩個陣列找到新的並刪除數組元素形成兩個數組?

$a1  = array('1'=>'1', '2'=>'2', '3'=>'3', '4'=>'4', '5'=>'5', '6'=>'6'); 
$a2  = array('1'=>'1', '2'=>'2', '3'=>'3', '6'=>'6', '7'=>'7', '8'=>'8'); 

我想獲得兩個陣列作爲返回的已被刪除的形式第一陣列那些元件輸出第一陣列。 其返回新元素第二陣列

+3

什麼你問? – 2013-05-07 07:14:14

+2

請參閱http://www.whathaveyoutried.com,瞭解有關如何尋求技術問題的信息。 – 2013-05-07 07:14:34

回答

1

要得到它有一切在第二陣列中不再元素的數組,你可以使用array_diff

<?php 
$array1 = array("a" => "green", "red", "blue", "red"); 
$array2 = array("b" => "green", "yellow", "red"); 
$result = array_diff($array1, $array2); 

print_r($result); 
?> 

Array 
(
    [1] => blue 
) 

要與所有的元素得到一個數組在兩個陣列中(未刪除),您可以使用array_intersect

<?php 
$array1 = array("a" => "green", "red", "blue"); 
$array2 = array("b" => "green", "yellow", "red"); 
$result = array_intersect($array1, $array2); 
print_r($result); 
?> 

Array 
(
    [a] => green 
    [0] => red 
) 
0
$a1 = array('1'=>'1', '2'=>'2', '3'=>'3', '4'=>'4', '5'=>'5', '6'=>'6'); 
$a2 = array('1'=>'1', '2'=>'2', '3'=>'3', '6'=>'6', '7'=>'7', '8'=>'8'); 
$out1 = array_diff($a1,$a2); 
$out2 = array_diff($a2,$a1); 
相關問題