<?php
/**
* Función para buscar en un array bidimensional de manera recursiva
* @param string $needle cadena a buscar
* @param array $haystack array con los valores
* @param boolean $strict (default false) Determina si se busca de manera estricta (tiene que coincidir el valor y el tipo de campo)
* @return true|false
*/
function in_array_r($needle, $haystack, $strict = false) { foreach ($haystack as $item) { if (($strict ? $item === $needle : $item == $needle) || (is_array($item) && in_array_r($needle, $item, $strict))) { return true;
}
}
return false;
}
// array bidimensional
$miArray = array(
array(1, "Madrid", "España"),
array(2, "Paris", "Francia"),
array(3, "Roma", "Italia")
);
if(in_array_r("Paris",$miArray)){ echo "<br>Encontrado";
}
// array asociativo
$miArray = array(
1=>array("Madrid", "España"), 2=>array("Paris", "Francia"), 3=>array("Roma", "Italia"));
if(in_array_r("Paris",$miArray)){ echo "<br>Encontrado";
}
?>