Función de matriz PHP que devuelve un subconjunto para claves dadas

Estoy buscando una función de matriz que hace algo como esto:

$myArray = array(
  'apple'=>'red',
  'banana'=>'yellow',
  'lettuce'=>'green',
  'strawberry'=>'red',
  'tomato'=>'red'
);
$keys = array(
  'lettuce',
  'tomato'
);

$ret = sub_array($myArray, $keys);

donde $ ret es:

array(
  'lettuce'=>'green',
  'tomato'=>'red'
);

No tengo ningún problema en escribirlo por mi cuenta, me gustaría evitar el bucle foreach y adoptar una función integrada o una combinación de funciones integradas. Me parece una operación de matriz común y general: me sorprendería si un bucle es la única opción.

Respuestas a la pregunta(3)

Su respuesta a la pregunta