Tal vez estoy volviendo loco, pero podría haber jurado que había una función básica de PHP que tuvo dos matrices como argumentos:Algo simple pregunta matriz PHP intersección
$a = array('1', '3');
$b = array('1'=>'apples', '2'=>'oranges', '3'=>'kiwis');
y realiza una intersección donde los valores de matriz $a
se comprueban las colisiones con las teclas en la matriz $b
. Volviendo algo así como
array('1'=>'apples', '3'=>'kiwis');
¿Existe una función de este tipo (que echaba de menos en la documentación), o hay una forma muy optimizada para lograr la misma cosa?
Esto funcionaría para el ejemplo dado, pero no permite valores duplicados en $ b. Haría la variación de invertir $ a (como se supone que debe mantener las teclas) y hacer 'array_intersect_key ($ b, array_flip ($ a))'. –
buen punto en los duplicados, no pensé en eso – Raz
'array_intersect_key ($ b, array_flip ($ a))' resulta para hacer el trabajo. ¡Aclamaciones! –