
Además de asignando valores directamente, la función array()
permite crear un array con una sola línea de código, tal y como vimos anteriormente. Esta función recibe un conjunto de parámetros, y crea un array a partir de los valores que se le pasan. Si en los parámetros no se indica el valor de la clave, crea un array numérico (con base 0). Si no se le pasa ningún parámetro, crea un array vacío.
$a = array(); // array vacío
$modulos = array("Programación", "Bases de datos", ..., "Desarrollo web en entorno servidor"); // array numérico
Una vez definido un array puedes añadir nuevos elementos (no definiendo el índice, o utilizando un índice nuevo) y modificar los ya existentes (utilizando el índice del elemento a modificar). También se pueden eliminar elementos de un array utilizando la función unset()
.
En el caso de los arrays numéricos, eliminar un elemento significa que las claves del mismo ya no estarán consecutivas.
unset ($modulos [0]);
// El primer elemento pasa a ser $modulos [1] == "Bases de datos";
La función array_values()
recibe un array como parámetro, y devuelve uno nuevo con los mismos elementos y con índices numéricos consecutivos con base 0.
Para comprobar si una variable es de tipo array, utiliza la función is_array()
. Para obtener el número de elementos que contiene un array, tienes la función count()
.
Si quieres buscar un elemento concreto dentro de un array, puedes utilizar la función in_array()
. Recibe como parámetros el elemento a buscar y la variable de tipo array en la que buscar, y devuelve true
si encontró el elemento o false
en caso contrario.
$modulos = array("Programación", "Bases de datos", "Desarrollo web en entorno servidor");
$modulo = "Bases de datos";
if (in_array($modulo, $modulos)) echo "Existe el módulo de nombre $modulo";
Otra posibilidad es la función array_search()
, que recibe los mismos parámetros pero devuelve la clave correspondiente al elemento, o false
si no lo encuentra.
Y si lo que quieres buscar es un clave en un array, tienes la función array_key_exists()
, que devuelve true
o false
.