Valores con 'in_array'
Parte de la sección Lógica y Flujo del Journey de PHP de Coddy — lección 17 de 68.
Cuando necesites comprobar si un valor específico existe dentro de un array, la función in_array() de PHP proporciona la solución perfecta. Esta función busca a través de un array y devuelve un valor booleano—true si se encuentra el valor, o false si no es así.
Aquí está la sintaxis básica:
<?php
$existingUsers = ["alice", "bob", "charlie"];
$newUsername = "bob";
if (in_array($newUsername, $existingUsers)) {
echo "Username already taken!";
} else {
echo "Username available!";
}
// Salida: Username already taken!
?>La función in_array() toma dos parámetros principales: el valor que estás buscando y el array en el que buscar. Dado que devuelve un booleano, funciona perfectamente con sentencias condicionales como los bucles if y while.
Esta función es particularmente útil para tareas de validación, como comprobar si la entrada de un usuario coincide con una de las varias opciones permitidas, verificar si un artículo ya existe en un carrito de compras o asegurar que no se añadan entradas duplicadas a una lista.
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Desafío
FácilRecibirás dos entradas: un array de colores disponibles en formato JSON y el nombre de un color para buscar. Lee ambas entradas, convierte la cadena JSON en un array, utiliza in_array() para comprobar si el color existe en el array, e imprime "Color available" si se encuentra o "Color not available" si no se encuentra.
Formato de entrada: Dos líneas - la primera línea contiene un array JSON (ejemplo: ["red","blue","green","yellow"]), la segunda línea contiene el nombre del color a buscar
Resultado esperado: Ya sea "Color available" o "Color not available" dependiendo de si el color existe en el array
Hoja de referencia
La función in_array() busca un valor dentro de un array y devuelve true si lo encuentra, false en caso contrario.
Sintaxis:
in_array($value, $array)Ejemplo:
<?php
$existingUsers = ["alice", "bob", "charlie"];
$newUsername = "bob";
if (in_array($newUsername, $existingUsers)) {
echo "Username already taken!";
} else {
echo "Username available!";
}
// Salida: Username already taken!
?>La función funciona perfectamente con sentencias condicionales y se utiliza comúnmente para tareas de validación como comprobar permisos de usuario, evitar duplicados o verificar opciones permitidas.
Pruébalo tú mismo
<?php
// Leer el array JSON de colores
$jsonInput = fgets(STDIN);
$colors = (array)json_decode($jsonInput, true);
// Leer el color a buscar
$searchColor = trim(fgets(STDIN));
// TODO: Escribe tu código a continuación para comprobar si el color existe en el array
// Imprimir el resultado
echo $result;
?>Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Lógica y Flujo
1Funciones avanzadas
Funciones anónimasClosures y 'use'Funciones de flechaFunciones callbackUso de 'call_user_func'Funciones variablesPaso por referenciaFunciones recursivasResumen: Miscelánea de funciones4Arreglos multidimensionales
Crear un arreglo 2DAcceder a elementos de un arreglo 2DModificar elementos de un arreglo 2DIterar con bucles anidadosArreglos asociativos 2DResumen: Ejercicio de cuadrícula simple2Manipulación avanzada de arrays
Agregar con 'array_push'Eliminar con 'array_pop'Agregar con 'array_unshift'Eliminar con 'array_shift'Fusionar arrays indexadosFusionar arrays asociativosExtraer con 'array_slice'Valores con 'in_array'Claves con 'array_search'Resumen: Ejercicio de Playlist3Ordenar Arrays
Ordenar arrays indexados de forma ascendenteOrdenar arrays indexados de forma descendenteOrdenar arrays asociativos por valorOrdenar arrays asociativos por claveOrdenación por orden naturalOrdenación personalizada con 'usort'Resumen: Ordenar tablas de clasificación