¿De qué otro modo podría comparar dos matrices ($ A y $ B) y reducir los elementos coincidentes de la primera para preparar el siguiente ciclo sobre la matriz $ A?¿Cómo comparar dos matrices y eliminar elementos coincidentes de uno para el siguiente ciclo?
$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)
¿Es esta la forma más sencilla o hay una manera de utilizar otra función que no he pensado? Mi objetivo es tener una matriz en la que pueda iterar, extrayendo grupos de contenido relacionado (he definido esas relaciones en otro lugar) hasta que la matriz devuelva falso.
Podría ser yo, pero no creo que la pregunta es muy clara. A medida que lo leo, solo te interesa array_diff ($ A, $ B) (lo cual parece bastante simple). ¿O el cálculo de $ C también es esencial? (Si es así, puede usar array_diff ($ A, $ C) en lugar de array_diff ($ A, $ B).) – mweerden
No, declaro que $ C es la intersección de $ A y $ B – kevtrout