Blog de programación, errores, soluciones

Chose Language:
Author: Admin/Publisher |finished | checked

PHP array_search

La función de PHP array_search busca en el array un valor que se corresponda con el valor dado, en caso de encontrar el valor dado en el array devolverá su key (clave)

Description / Descripción
array_search(mixed $needle, array $haystack, bool $strict = false): int|string|false

Parámetros

$needle el valor que será buscado, si este valor es un string la comparación será case sensitive.

$haystack el array donde buscaremos el valor dado en $needle

$strict – este parámetro indicará si el search será idéntico o igual en caso de que sea true la comparación será === en vez de ==, los objetos deberán ser de la misma instancia en caso de strict sea true.

Retornos

Retorna la key correspondiente para el valor buscado en el array, en otro caso devolvera false. Este retornara el key donde aparece por primera vez el valor buscado.

Se puede obtener las keys para todos los valores donde se encuentre el valor buscado, esto lo podemos hacer con la función array_keys y la opción search_value.

pedes ver mas sobre array_keys en https://blastcoding.com/php-array_keys/

Ejemplo de PHP array_search

En este ejemplo hemos utilizado un array asociativo, pero debemos tener en cuenta otros casos debido a que el valor devuelto puede ser 0 también y esto es algo que debe tener en cuenta ya que el valor 0 puede ser evaluado como falso

// Definir un array de autos
$autos = array(
    "Toyota" => "Camry",
    "Honda" => "Civic",
    "Ford" => "Focus",
    "Chevrolet" => "Malibu"
);

// Buscar la posición del modelo "Civic" en el array
$posicion = array_search("Civic", $autos);

// Verificar si se encontró y mostrar el resultado
if ($posicion !== false) {
    echo "La posición del modelo 'Civic' en el array de autos es: " . $posicion;
} else {
    echo "El modelo 'Civic' no se encontró en el array de autos";
}
La posición del modelo 'Civic' en el array de autos es: Honda
Category: php
Something wrong? If you found an error or mistake in the content you can contact me on Twitter | @luisg2249_luis.
Last 4 post in same category