Saltar al contenido

[PHP]: ¿Qué devuelve array_search () si no se encuentra nada?

Luego de investigar con especialistas en el tema, programadores de deferentes ramas y maestros hemos dado con la respuesta al problema y la dejamos plasmada en esta publicación.

Solución:

Citando el página de manual de array_search() :

Devuelve el key para aguja si se encuentra en el array, FALSE de lo contrario.

Lo que significa que tienes que usar algo como:

$found = array_search($needle, $haystack);

if ($found !== false) 
    // do stuff
    // when found
 else 
    // do different stuff
    // when not found

Tenga en cuenta que usé el !== operador, que hace una comparación sensible al tipo; consulte Operadores de comparación, Malabarismo de tipos y Conversión a booleano para obtener más detalles al respecto 😉

si solo está comprobando si el valor existe, in_array es el camino a seguir.

Según la documentación oficial en http://php.net/manual/en/function.array-search.php:

Advertencia Esta función puede devolver un valor booleano FALSO, pero también puede devolver un valor no booleano que se evalúa como FALSO. Lea la sección sobre valores booleanos para obtener más información. Utilice el operador === para probar el valor de retorno de esta función.

Vea este ejemplo:

$foundKey = array_search(12345, $myArray);
if(!isset($foundKey))
    // If $myArray is null, then $foundKey will be null too.
    // Do something when both $myArray and $foundKey are null.
 elseif ($foundKey===false) 
    // $myArray is not null, but 12345 was not found in the $myArray array.
else
    // 12345 was found in the $myArray array.

valoraciones y reseñas

Agradecemos que desees añadir valor a nuestro contenido contribuyendo tu veteranía en las ilustraciones.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *