Cita:
Iniciado por mamon
Lo que quiero saber es si se repiten los items comparando un arreglo con el otro, y los items q no estan en un arreglo pero si en el otro y vicecersa.
A mí tampoco me queda claro cual es tu problema. Por si he entendido algo, mira este código:
Código PHP:
<?
$array1=array ("vaso", "plato", "bandeja", "botella");
$array2=array ("bandeja", "vaso", "cuchillo");
echo '<pre>';
print_r($array1);
echo '</pre>';
echo '<pre>';
print_r($array2);
echo '</pre>';
echo "Elementos que existen en las 2 arrays<br>\n";
foreach ($array1 as $value1) {
foreach ($array2 as $value2) {
if ($value1 == $value2){
echo "---> $value1<br>\n";
}
}
}
echo "<br>\nElementos que sólo existen en array1<br>\n";
foreach ($array1 as $value1) {
$encontrado=false;
foreach ($array2 as $value2) {
if ($value1 == $value2){
$encontrado=true;
$break;
}
}
if ($encontrado == false){
echo "---> $value1<br>\n";
}
}
echo "<br>\nElementos que sólo existen en array2<br>\n";
foreach ($array2 as $value2) {
$encontrado=false;
foreach ($array1 as $value1) {
if ($value1 == $value2){
$encontrado=true;
$break;
}
}
if ($encontrado == false){
echo "---> $value2<br>\n";
}
}
?>
Como puedes comprobar, se comparan 2 array (no importa su clasificación) y se obtienen tres tipos de listado:
1.- Los elementos que están en los dos arrays.
2.- Los que están en el array 1 y no en el 2.
3.- Los que están en el array 2 y no en el 1.
Tras procesarlo, este es el resultado:
Array
(
[0] => vaso
[1] => plato
[2] => bandeja
[3] => botella
)
Array
(
[0] => bandeja
[1] => vaso
[2] => cuchillo
)
Elementos que existen en las 2 arrays
---> vaso
---> bandeja
Elementos que sólo existen en array1
---> plato
---> botella
Elementos que sólo existen en array2
---> cuchillo
Un saludo