我有兩個數組是這樣的:如何從兩個數組中刪除重複對?
$arr = Array (1, 2, 3 ,4 ,5, 6 ,7 ,8) ;
這:
$arr2 = Array (7, 6, 5,8 ,3 ,2 ,1, 4)
這些陣列的對是使用相同的密鑰數量($改編[0] - $ ARR2 [0 ] ECC)
1-7
2-6
3-5
4-8
5-3
6-2
7-1
8-4
,你可以看到有一些重複的對像1-7和7-1,2-6和6-2,3-5和5-3,4-8和8 -4。
我需要一個函數來引用這兩個數組並返回一個數組與每個單對。
例如,這是什麼樣的功能應該回報:
Array ([0] => 1 [1] => 7 [2] => 2 [3] => 6 [4] => 3 [5] => 5 [6] => 4 [7] => 8)
正如你所看到的對頃:1-7,2-6,3-5和4-8。
我做了這個功能正常誰不工作:
function free_pairs($arr,$arr2){
$ok = 0;
$ris = array();
$indice_ris=0;
for ($i=1; $i <=count($arr) ; $i++) {
$x1 = $arr[$i];
$x2 = $arr2[$i];
for ($j=1; $j <= count($arr2) ; $j++) {
$y1 = $arr[$j];
$y2 = $arr2[$j];
if($x1 != $y2 && $x2 != $y1){
$ok = 1;
} else {
$ok = 0;
}
}
if ($ok == 1) {
$ris[$indice_ris] = $x1;
$ris[$indice_ris+1] = $x2;
$indice_ris = $indice_ris+2;
$ok = 0;
}
return $ris;
}
我認爲這個問題是在這一點,如果:
if($x1 != $y2 && $x2 !=$y1)
你認爲怎麼樣?
這項工作完美:d謝謝! – gaggina
@ user740478:不客氣。 – Toto