Blog
Arrays (o matrices) simples
- Publicado por: leo
- Categoría: Curso principiante PHP
Te doy la bienvenida a esta sección del curso titulada “Arrays (o marices) simples”. Aquí, en este capítulo es donde empezarás a conocer este tipo de variable especial denominada arrays o matriz. Son realmente útiles para guardar datos o alguna información. Sigamos con este cuarto capítulo del curso básico para aprender PHP.
¿Qué es un arrays o matriz en lenguaje PHP?
Los arrays son un tipo especial de variable que puede contener muchas variables dentro de sí, y al mismo tiempo mantenerlas en una especie de lista.
Existen funciones que permiten interactuar con los arrays (matrices) también y manipularlos de varias maneras. Los arrays son esenciales para almacenar, manejar y operar sobre un conjunto de variables.
Se admiten arrays simples y multidimensionales, y pueden ser creados tanto por el usuario como por alguna función. Existen funciones específicas de manejo de bases de datos para llenar arrays desde las consultas a bases de datos, y varias funciones devuelven arrays.
Por ejemplo, digamos que queremos crear una lista de todos los números impares entre 1 y 10. Una vez que creamos la lista, podemos asignar nuevas variables que se referirán a una variable en el array, utilizando el índice de la variable.
Para usar la primera variable de la lista (en este caso el número 1), necesitaremos dar el primer índice, que es 0, ya que PHP usa índices basados en cero, como casi todos los lenguajes de programación actuales.
$numeros_impares = [1,3,5,7,9]; $primer_numero_impar = $numeros_impares[0]; $segundo_numero_impar = $numeros_impares[1]; echo "El primer número impar es: $primer_numero_impar\n"; echo "El segundo número impar es: $segundo_numero_impar\n";
Ahora podemos agregar nuevas variables usando un índice. Para agregar un elemento al final de la lista, podemos asignar la matriz con el índice 5 (la sexta variable contenida dentro de la matriz):
$numeros_impares = [1,3,5,7,9]; $numeros_impares[5] = 11; print_r($numeros_impares);
Los arrays o matrices, pueden contener diferentes tipos de variables de acuerdo a las necesidades que tenga tu proyecto, e incluso pueden contener otros arrays u objetos como miembros de su estructura.
Si deseas borrar o eliminar, un ítem del contenido de un array, utiliza la función unset en el propio miembro que desees eliminar. Aquí te muestro este ejemplo:
$numeros_impares = [1,3,5,7,9]; unset($numeros_impares[2]); // eliminará el 3er ítem (el número 5) de la lista del arrays print_r($numeros_impares);
Funciones útiles de los arrays o matrices
La función de conteo (count), te devolverá como resultado el número de miembros que tiene un array dentro de su estructura.
$numeros_impares = [1,3,5,7,9]; echo count($numeros_impares);
La función de PHP, reset obtiene el primer miembro del array. (Aunque también resetea el puntero de iteración interno). Aquí hay un ejemplo de la función reset:
$numeros_impares = [1,3,5,7,9]; $primer_item = reset($numeros_impares); echo $primer_item;
También podemos usar la sintaxis del índice para obtener el primer miembro del array, observa este ejemplo:
$numeros_impares = [1,3,5,7,9]; $primer_item = $numeros_impares [0]; echo $primer_item;
La función end obtiene el último miembro de la lista del array.
$numeros_impares = [1,3,5,7,9]; $ultimo_item = end($numeros_impares); echo $ultimo_item;
También podemos usar la función de conteo (count) para obtener el número de elementos de la lista, y luego usarla para referirnos a la última variable del array. Nota que restamos uno del último índice porque los índices son cero basados en PHP, así que necesitamos arreglar el hecho de que no contamos la variable número cero.
$numeros_impares = [1,3,5,7,9]; $ultimo_index = count($numeros_impares) - 1; $ultimo_item = $numeros_impares[$ultimo_item]; echo $ultimo_item;
Funciones de pila y cola
Las matrices o arrays, también se pueden utilizar como pilas y colas.
Para empujar un miembro hasta el final de una matriz, utiliza la función array_push:
$numeros = [1,2,3]; array_push($numeros, 4); // ahora la matriz o arrays es [1,2,3,4]; // aqui se imprime el nuevo array print_r($numeros);
Para hacer saltar un miembro desde el final de una matriz, usa la función array_pop:
$numeros = [1,2,3,4]; array_pop($numeros); // ahora la matriz o array es [1,2,3]; // aqui se imprime el nuevo array print_r($numeros);
Para empujar a un miembro al principio de una matriz, utiliza la función array_unshift:
$numeros = [1,2,3]; array_unshift($numeros, 0); // ahora la matriz o arrays es [0,1,2,3]; //aquí se imprime el nuevo array print_r($numeros);
Para hacer saltar un miembro desde el principio de una matriz, usa la función array_shift:
$numeros = [0,1,2,3]; array_shift($numeros); // ahora el array es [1,2,3]; // aqui se imprime el nuevo array print_r($numeros);
Concatenación de arrays o matrices
Podemos usar la función array_merge para concatenar a dos o mas matrices en PHP. Aquí abajo te muestro un ejemplo:
$numeros_impares = [1,3,5,7,9]; $numeros_pares = [2,4,6,8,10]; $todos_los_numeros = array_merge($numeros_impares, $numeros_pares); print_r($todos_los_numeros);
Clasificación de matrices
Podemos usar la función de sort para ordenar matrices. La función rsort ordena los arrays al revés. Entonces los últimos items, serán los primeros. Ten en cuenta que la ordenación se realiza en la matriz de entrada, y que esta función no devuelve una nueva matriz.
$numeros = [4,2,3,1,5]; sort($numeros); print_r($numeros);
Funciones de matriz avanzadas
La función array_slice devuelve una nueva matriz que contiene una cierta parte de una matriz específica de una compensación. Por ejemplo, si queremos descartar los primeros 3 elementos de una matriz, podemos hacer lo siguiente:
$numeros = [1,2,3,4,5,6]; print_r(array_slice($numeros, 3));
También podemos decidir tomar una porción de una longitud específica. Por ejemplo, si queremos tomar solo dos elementos, podemos agregar otro argumento a la función:
$numeros = [1,2,3,4,5,6]; print_r(array_slice($numeros, 3, 2));
La función array_splice hace exactamente lo mismo, sin embargo, también eliminará la porción devuelta de la matriz original (en este caso, la variable numeros).
$numeros = [1,2,3,4,5,6]; print_r(array_splice($numeros, 3, 2)); print_r($numeros);
Ejercicio:
-
- Crea una nueva matriz que contenga los números pares 2,4,6,8 y 10. El nombre de la nueva matriz debería ser $numeros_pares.
- Concatenar las matrices $nombres_masculinos y $nombres_femeninos, para así crear una nueva matriz llamada $nombres.
<?php // Primera parte: añade la matriz $numeros_pares aqui $nombres_masculinos = ["Jake", "Eric", "John"]; $nombres_femeninos = ["Jessica", "Beth", "Sandra"]; // Segunda parte: unir los nombres masculino y femenino en una matriz $nombres = NULL; print_r($numeros_pares); print_r($nombres); ?>
Solución al ejercicio propuesto:
<?php // Primera parte: añada la matriz de números pares aquí $numeros_pares = [2,4,6,8,10]; $nombres_masculinos = ["Jake", "Eric", "John"]; $nombres_femeninos = ["Jessica", "Beth", "Sandra"]; // Segunda parte: unir los nombres masculino y femenino en una matriz $nombres = array_merge($male_names, $female_names); print_r($numeros_pares); print_r($nombres); ?>
Salida en pantalla
Array ( [0] => 2 [1] => 4 [2] => 6 [3] => 8 [4] => 10 ) Array ( [0] => Jake [1] => Eric [2] => John [3] => Jessica [4] => Beth [5] => Sandra )
Felicidades ya posees un conocimiento básico de matrices o arrays en PHP. Recuerda que tienes que poner en práctica lo que aprendiste en esta sección del curso. Para aprender mucho más te invitamos a nuestro curso gratuito para aprender PHP:
[…] Arrays (o matrices) simples (AprenderPHP – Curso básico) […]