Ver Mensaje Individual
  #3 (permalink)  
Antiguo 17/06/2007, 10:28
Avatar de Panino5001
Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Re: Como unir dos arrays en uno en el que estén sólo los elementos coincidentes?

Código PHP:
<?php
$uno
=array(
array(
'id'=>1,'nombre'=>'David','cantidad'=>3),
array(
'id'=>2,'nombre'=>'Pepe','cantidad'=>4),
array(
'id'=>3,'nombre'=>'Juan','cantidad'=>6)
);
$dos=array(
array(
'id'=>2,'nombre'=>'Pepe','cantidad'=>4),
array(
'id'=>3,'nombre'=>'Juan','cantidad'=>6),
array(
'id'=>5,'nombre'=>'Pedro','cantidad'=>2)
);
function 
comp($a,$b,&$v){
for(
$i=0;$i<count($a);$i++){
for(
$j=0;$j<count($b);$j++){
if(
$a[$i]['id']===$b[$j]['id'] && $a[$i]['nombre']===$b[$j]['nombre'] && $a[$i]['cantidad']===$b[$j]['cantidad']) $v[]=array('id'=>$a[$i]['id'],'nombre'=>$a[$i]['nombre'],'cantidad'=>$a[$i]['cantidad']);
}
}
}
$v=array();
comp($uno,$dos,$v);
echo 
'<pre>';
print_r($v);
echo 
'</pre>';
?>

Última edición por Panino5001; 17/06/2007 a las 11:46