<?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";
}
?>