Jak inaczej porównać dwie tablice ($ A i $ B) i zredukować elementy pasujące z pierwszego, aby przygotować się do następnej pętli w tablicy $ A?Jak porównać dwie tablice i usunąć pasujące elementy z jednej dla następnej pętli?
$A = array(1,2,3,4,5,6,7,8);
$B = array(1,2,3,4);
$C = array_intersect($A,$B); //equals (1,2,3,4)
$A = array_diff($A,$B); //equals (5,6,7,8)
Czy jest to najprostszy sposób, czy istnieje sposób użycia innej funkcji, o której nie myślałem? Moim celem jest posiadanie tablicy, którą mogę przełączyć, wyciągając grupy powiązanych treści (zdefiniowałem te relacje w innym miejscu), dopóki tablica nie zwróci fałszu.
To może być ja, ale nie sądzę, pytanie jest bardzo jasne. Kiedy go czytam, interesuje cię tylko array_diff ($ A, $ B) (co wydaje się całkiem proste). Czy też konieczne jest obliczenie $ C? (Jeśli tak, możesz użyć array_diff ($ A, $ C) zamiast array_diff ($ A, $ B).) – mweerden
Nie, deklaruję $ C jako punkt przecięcia $ A i $ B – kevtrout