Matrices PHP

P

Introducción

Los arreglos son bloques consecutivos de ubicaciones de memoria para almacenar datos en ellos. PHP proporciona matrices unidimensionales y multidimensionales, que pueden estar en forma de clave-valor. En este artículo, aprenderá en profundidad sobre las matrices de PHP. Para construir una base sólida en PHP, es muy importante tener un concepto claro de matrices de PHP. Entonces, profundicemos en ello.

¿Qué sucede cuando los datos se almacenan en matrices?

Trate de imaginar la memoria de la computadora como una colección de bloques. La creación de una matriz de tamaño n ocupa un número n de bloques de memoria consecutivos para esta matriz. El bloque inicial está en el índice 0 y el último bloque de la matriz está en el índice n-1. Donde n es el tamaño de la matriz.

Con esta idea de la matriz dentro de la memoria, existen tres tipos principales de matrices en PHP.

  1. Matrices indexadas
  2. Matrices asociativas
  3. Matrices multidimensionales

Cómo crear una matriz en PHP

Las matrices están integradas en PHP, no necesita instalar ninguna biblioteca. Simplemente use la palabra clave array() para crear una matriz en PHP. Vea el ejemplo a continuación.

$mi_primer_arreglo = arreglo( 1, 2, 3, 4, 5);

<?php
$my_first_array = array( 1, 2, 3, 4, 5);
?>
<?php 
/* Another method to create array. */
    $array[0] = "one";
    $array[1] = "two";
    $array[2] = "three";
?>

Matrices indexadas en PHP

Las matrices de índices indexados o numéricos almacenan esos datos y los señalan mediante un índice que comienza desde 0 y apunta al primer elemento de la matriz.

Ejemplo de la matriz indexada en PHP

<?php
$bikes = array("Suzuki", "Yamaha", "Honda");
echo "I like " . $bikes[0] . ", " . $bikes[1] . " and " . $bikes[2] . ".";
?>

Explicación del ejemplo

  • La matriz se forma utilizando la palabra clave array(). Los valores están separados por comas.
  • Para acceder a los valores de la matriz, pase el índice del valor entre corchetes.
  • Bucle a través de la matriz indexada de PHP

Considere el ejemplo anterior y recorra los valores de la matriz uno por uno.

<?php
foreach( $bikes as $bike ) {
   echo "I like $bike <br />";
}
?>

Matrices asociativas en PHP

Estos son algunos de los conceptos más importantes y ampliamente utilizados de PHP. Las matrices asociativas son como matrices numéricas o indexadas, pero no tienen un índice numérico para cada valor. A cada valor de las matrices asociativas se le asigna una clave de cadena. De esta forma, tenemos una fuerte asociación entre las claves y los valores.

Ejemplo de matrices asociativas en PHP

<?php
  $employee = array("Jawad" => "Tech", "Adam" => "Tech", "Tuba" => "Tech");
  echo "Jawad works in ". $employee['Jawad'] . "department" <br />";
  echo "Jawad works in ". $employee['Adam'] . "department" <br />";
  echo "Jawad works in ". $employee['Tuba'] . "department" <br />";
?>

Bucle a través de matriz asociativa en PHP

Considere la matriz anterior para recorrerla. Verá que la cantidad de líneas de código se reduce al usar el bucle Foreach para acceder a matrices asociativas.

<?php
foreach($employee as $key=>$value)
{
  echo $key . "works in" . $value <br />";
}
?>

En el ejemplo anterior, la clave contiene el índice de la matriz asociativa y el valor contiene el valor de esta clave.

Matrices multidimensionales en PHP

Los arreglos que contienen más arreglos se denominan arreglos multidimensionales. En este nivel, te enseñaremos los arreglos bidimensionales en PHP. Sin embargo, el número de dimensiones puede ser más de dos, pero son más complejas. Por lo tanto, no se requiere en este nivel.

<?php
$weather = array (
  array("Jan","cool"),
  array("Feb","moderate"),
  array("Jun","hot"),
  array("Oct","moderate")
);
?>

En el ejemplo anterior, la matriz principal es $weather. Contiene cuatro matrices en su interior. Veamos cómo acceder a los valores de matrices bidimensionales en PHP.

<?php
echo "weather in " $weather[0][0] is "$weather[0][1]";

echo "weather in " $weather[1][0] is "$weather[1][1]";

echo "weather in " $weather[2][0] is "$weather[2][1]";

echo "weather in " $weather[3][0] is "$weather[3][1]";
?>

Bucle a través de matrices multidimensionales en PHP

Considere el ejemplo anterior para hacer un bucle usando for loop en PHP.

<?php
for($i = 0; $i <= 3 ; $i++)
{
  echo "weather in " $weather[$i][0] is "$weather[$i][1]";
}
?>

Cómo obtener la longitud de la matriz en PHP

La función PHP count() devuelve la longitud de la matriz o la cadena pasada en ella. La matriz puede ser de índice, asociativa o multidimensional.

<?php
$bikes= array("Honda", "Suzuki", "Yamaha");
echo count($bikes);
?>

Se ha lanzado PHP 8 y ​​las matrices son las mismas que en las versiones anteriores de PHP.

En este artículo, ha repasado los arreglos, sus tipos, accediendo a los arreglos con y sin los bucles. Hay muchos otros conceptos que giran en torno a las matrices en PHP. Como ordenar elementos de arreglos, invertir los elementos de un arreglo, etc. Cubriremos eso en la siguiente parte del tutorial de arreglos.

Nota: si tiene una matriz de tamaño 10 con elementos almacenados en ella. Hencia, tintente acceder a la matriz dando un índice mayor que 10 o menor que 0. Dará un error index_out_of_bound.

Función de rango en PHP

El rango es una función interesante cuando se analiza con las matrices. Tiene algunos casos de uso bastante buenos. La función de rango crea una matriz dentro del rango especificado. Recuerde que el resultado incluye los valores inicial y final. El parámetro de paso define el incremento o decremento para el siguiente elemento en el rango.

<?php
foreach (range(0, 5) as $num) {
    echo $num; // array(0, 1, 2, 3, 4, 5)

}

// Using step parameter
foreach (range(0, 50, 10) as $num) {
    echo $num; // array(0, 10, 20, 30, 40, 50)

}
?>
<?php
foreach (range('a', 'f') as $char) {
    echo $char; // array('a', 'b', 'c', 'd', 'e', 'f');
}
?>

Para obtener una referencia oficial de matrices de PHP 8, haga clic en aquí.

Ahora que conoce los conceptos básicos de las matrices, continuaremos en nuestro próximo artículo sobre Iterables.

Agregar comentario

Red de tutores

Aprende PHP de la A a la Z