Continuacion Matrices 2015_II

11
Continuacion … MATRICES O ARRAYS (ARREGLOS) DE DOS DIMENSIONES Las matrices decimos que son arrays (arreglos) de dos dimensiones. También podemos verlas como tablas donde cada elemento tiene una fila y una columna. Para comprenderlas mejor podemos recordar las matrices matemáticas de 2 dimensiones. Un ejemplo de matriz en matemáticas podría ser esta: En una matriz normalmente hablamos de filas y columnas y decimos que la matriz tiene m filas y n columnas. Así, cada elemento queda identificado por su fila i y su columna j. Por ejemplo, en la matriz que hemos mostrado anteriormente podríamos decir que tenemos 3 filas (fila 0, fila 1 y fila 2) y cuatro columnas (columna 0, columna 1, columna 2, columna 3). Podríamos decir que el elemento de la fila 1, columna 3 es igual a 2. De la misma manera podríamos decir: $valor [0] [0] = 1; $valor [0] [1] = 14; $valor [0] [2] = 8; $valor [0] [3] = 3; $valor [1] [0] = 6; $valor [1] [1] = 19; $valor [1] [2] = 7; $valor [1] [3] = 2; $valor [2] [0] = 3; $valor [2] [1] = 13; $valor [2] [2] = 4; $valor [2] [3] = 1; Escribe ahora este código y guárdalo con un nombre de archivo como ejemplo3.php. A continuación, sube el fichero al servidor y visualiza el resultado. <?php

description

matrices multidimensionales en php

Transcript of Continuacion Matrices 2015_II

Page 1: Continuacion Matrices 2015_II

Continuacion …

MATRICES O ARRAYS (ARREGLOS) DE DOS DIMENSIONES

Las matrices decimos que son arrays (arreglos) de dos dimensiones. También podemos

verlas como tablas donde cada elemento tiene una fila y una columna. Para comprenderlas

mejor podemos recordar las matrices matemáticas de 2 dimensiones. Un ejemplo de matriz

en matemáticas podría ser esta:

 En una matriz normalmente hablamos de filas y columnas y decimos que la matriz tiene m

filas y n columnas. Así, cada elemento queda identificado por su fila i y su columna j. Por

ejemplo, en la matriz que hemos mostrado anteriormente podríamos decir que tenemos 3

filas (fila 0, fila 1 y fila 2) y cuatro columnas (columna 0, columna 1, columna 2, columna 3).

Podríamos decir que el elemento de la fila 1, columna 3 es igual a 2. De la misma manera

podríamos decir:

$valor [0] [0] = 1; $valor [0] [1] = 14; $valor [0] [2] = 8; $valor [0] [3] = 3;

$valor [1] [0] = 6; $valor [1] [1] = 19; $valor [1] [2] = 7; $valor [1] [3] = 2;

$valor [2] [0] = 3; $valor [2] [1] = 13; $valor [2] [2] = 4; $valor [2] [3] = 1;

 Escribe ahora este código y guárdalo con un nombre de archivo como ejemplo3.php. A

continuación, sube el fichero al servidor y visualiza el resultado.

<?php

$animal[0][0] = "Perro";

$animal[0][1] = "Gato";

$animal[1][0] = "Lombriz";

$animal[1][1] = "Burro";

$animal[2][0] = "Murciélago";

Page 2: Continuacion Matrices 2015_II

$animal[2][1] = "Cocodrilo";

echo $animal[2][1];

echo $animal[0][0];

?>

 

 Hay que recordar que los arrays siempre comienzan numerándose desde cero.

Otra forma de asignar valores a un array matriz es similar a la que ya describimos para los

vectores. Escribe este código y guárdalo con un nombre de archivo como ejemplo4.php. A

continuación, sube el fichero al servidor y visualiza el resultado.

<?php

$animal = array(

array("Perro", "Gato"),

array("Lombriz", "Burro"),

array("Murciélago", "Cocodril

o")

);

echo $animal[2][1];

echo $animal[0][0];

?>

 La sintaxis que hemos empleado equivale a lo siguiente:

$animal [0] [0] = "Perro";  $animal [0] [1] = "Gato";

$animal [1] [0] = "Lombriz";  $animal [1] [1] = "Burro";

$animal [2] [0] = "Murciélago";  $animal [2] [1] = "Cocodrilo";

 De ahí que por pantalla se muestre "Cocodrilo" y "Perro", al igual que en el ejemplo anterior.

Page 3: Continuacion Matrices 2015_II

También obtenemos el mismo resultado usando este código, que es una mezcla de ambos

tipos de sintaxis:

<?php

$animal[0] = array("Perro", "Gato");

$animal[1] = array("Lombriz", "Burro");

$animal[2] = array("Murciélago", "Cocodrilo");

echo $animal[2][1];

echo $animal[0][0];

?>

 La visualización obtenida es la misma: por pantalla se muestra "Cocodrilo" y "Perro", al igual

que en el ejemplo anterior.

 ARRAYS MULTIDIMENSIONALES

Los arrays multidimensionales son los que tienen más de dos dimensiones. Estos tipos de

arrays se definen como las matrices pero añadiendo más índices.

Escribe este código, guarda el archivo php, súbelo al servidor y visualiza el resultado en tu

navegador.

<?php

$animal[0][0][0] = "Perro";

$animal[0][0][1] = "Gato";

$animal[0][0][2] = "Lombriz";

$animal[1][0][0] = "Burro";

$animal[1][0][1] = "Murciélago";

$animal[1][0][2] = "Cocodrilo";

echo "<br/>& nbsp;& nbsp;& nbsp;" . $animal[1]

[0][1];

echo "<br/>& nbsp;& nbsp;& nbsp;" . $animal[0]

[0][3];

?>

 

Page 4: Continuacion Matrices 2015_II

 En este ejemplo hemos incluido una línea que tiene poco sentido, o podría interpretarse

como un error:

echo "<br/>& nbsp;& nbsp;& nbsp;" . $animal[0][0][3];

 Fíjate que estamos invocando un localizador [0][0][3] que no existe, o al que aún no le

hemos asignado valor. Dependiendo del lenguaje y de la versión el resultado puede ser uno u

otro. En principio, debe tratar de evitarse invocar a una variable tipo array a la que no se

haya asignado valor, ya que esto supone una inconsistencia o incoherencia. En general, si

esto ocurre, PHP devolverá un valor “vacío”, que en este caso supondría que en la pantalla

no se muestra nada asociado a esta variable. Por eso en la pantalla vemos únicamente

“Murciélago” y nada más.

Escribe el código que incluimos más abajo y visualiza el resultado. Si te fijas, cuando

declaramos un array dentro de otro array lo que hacemos es añadir una dimensión más al

array. Por ejemplo, si quisiéramos declarar un array de tres dimensiones de nombre

$miFecha podríamos escribir:

<?php

$miFecha = array( //Declara array

array( //Dimensión [0][…][…]

array("13 de enero de 2015", "11 de febrero de 2018"), //[0][0][…]

array("13 de enero de 2020", "11 de febrero de 2015"), //[0][1][…]

),

array( //Dimensión [1][…][…]

array("3 de agosto de 2017", "1 de octubre de 2016"), //[1][0][…]

array("3 de agosto de 2013", "1 de octubre de 2019"), //[1][1][…]

),

array( //Dimensión [2][…][…]

array("10 de junio de 2020", "11 de marzo de 2019"), //[2][0][…]

Page 5: Continuacion Matrices 2015_II

),

array(

array("22 de marzo de 2020", "28 de mayo de 2019"), //[3][0][…]

array("22 de marzo de 2019", "28 de mayo de 2018"), //[3][1][…]

array("22 de marzo de 2018", "28 de mayo de 2017"), //[3][2][…]

array("22 de marzo de 2017", "28 de mayo de 2016"), //[3][3][…]

)

);

echo "<br/>& nbsp;& nbsp;& nbsp;" . $miFecha[3][2][0];

?>

 

En este ejemplo hemos definido valores para los siguientes índices de array:

$miFecha [0] [0] [0], $miFecha [0] [0] [1]

$miFecha [0] [1] [0], $miFecha [0] [1] [1]

$miFecha [1] [0] [0], $miFecha [1] [0] [1]

$miFecha [1] [1] [0], $miFecha [1] [1] [1]

$miFecha [2] [0] [0], $miFecha [2] [0] [1]

$miFecha [3] [0] [0], $miFecha [3] [0] [1]

$miFecha [3] [1] [0], $miFecha [3] [1] [1]

$miFecha [3] [2] [0], $miFecha [3] [2] [1]

$miFecha [3] [3] [0], $miFecha [3] [3] [1]

Page 6: Continuacion Matrices 2015_II

Compruébalo solicitando la visualización de todas estas variables, como vemos en este

ejemplo.

<?php

$miFecha = array(

array(

array("13 de enero de 2015", "11 de febrero de 2018"),

array("13 de enero de 2020", "11 de febrero de 2015"),

),

array(

array("3 de agosto de 2017", "1 de octubre de 2016"),

array("3 de agosto de 2013", "1 de octubre de 2019"),

),

array(

array("10 de junio de 2020", "11 de marzo de 2019"),

),

array(

array("22 de marzo de 2020", "28 de mayo de 2019"),

array("22 de marzo de 2019", "28 de mayo de 2018"),

array("22 de marzo de 2018", "28 de mayo de 2017"),

array("22 de marzo de 2017", "28 de mayo de 2016"),

)

);

echo "<br/>& nbsp;& nbsp;& nbsp;" . $miFecha[3][2][0];

echo $miFecha [0] [0] [0]. "<br>"; echo $miFecha [0] [0] [1]. "<br>";

echo $miFecha [0] [1] [0]. "<br>"; echo $miFecha [0] [1] [1]. "<br>";

echo $miFecha [1] [0] [0]. "<br>"; echo $miFecha [1] [0] [1]. "<br>";

echo $miFecha [1] [1] [0]. "<br>"; echo $miFecha [1] [1] [1]. "<br>";

echo $miFecha [2] [0] [0]. "<br>"; echo $miFecha [2] [0] [1]. "<br>";

echo $miFecha [3] [0] [0]. "<br>"; echo $miFecha [3] [0] [1]. "<br>";

echo $miFecha [3] [1] [0]. "<br>"; echo $miFecha [3] [1] [1]. "<br>";

echo $miFecha [3] [2] [0]. "<br>"; echo $miFecha [3] [2] [1]. "<br>";

echo $miFecha [3] [3] [0]. "<br>"; echo $miFecha [3] [3] [1]. "<br>";

?>

Page 7: Continuacion Matrices 2015_II

 

 ARRAYS ASOCIATIVOS EN PHP

Anteriormente hemos visto lo que son los arrays tradicionales en PHP y cómo operar con

ellos de forma muy elemental. Hemos aprendido que los arrays pueden denominarse

“variables con localizador” o “variables con índice”. Por tanto los elementos del array son

datos que están asociados, a su vez, a un elemento del array llamado índice.

 

Supongamos el array nombre[0], nombre[1], nombre[2]. El nombre de variable para el array

es “nombre” mientras que los índices son 0, 1 y 2.

El índice se caracteriza por conectar los elementos del array por medio de una numeración

que empieza por cero. Así, el primer elemento del array tiene índice cero, el segundo tiene

índice uno, y así sucesivamente.

Page 8: Continuacion Matrices 2015_II

Pero en realidad, resulta que este índice es numérico solo por defecto; es decir, tenemos la

posibilidad de crear nuestro propio índice dentro de un array. Cuando hacemos esto, estamos

convirtiendo el array en lo que se denomina un array asociativo.

Escribe ahora este código y guárdalo con un nombre de archivo como ejemplo1.php. A

continuación, sube el fichero al servidor y visualiza el resultado.

<?php //Ejemplo arrays aprenderaprogramar.com

$colores_vehiculos = array(

'coche' => 'Rojo',

'moto' => 'verde',

'avion' => 'amarillo'

);

echo $colores_vehiculos['moto'];

?>

 

 Si te fijas en el código, hemos asignado a la variable $colores_vehiculos un array asociativo.

Al ser asociativo tenemos que especificar un índice. Los índices que hemos especificado son:

coche, moto y avion. Es decir, en vez de usar 0, 1 y 2 hemos usado coche, moto y avión.

Para declarar arrays asociativos, en el paréntesis de definición del array, tenemos que

asociar el índice con el valor por medio del operador =>. Fíjate que el índice debe ir escrito

entre comillas simples. Después, para acceder a un elemento del array asociativo tenemos

que escribir la variable asignada al array, y posteriormente escribir entre corchetes el índice

que hemos asignado a dicho elemento.

Tenemos la posibilidad de utilizar cualquier tipo de dato para especificar un índice. Por

defecto es un número, pero también podemos poner cadenas de texto, como en el ejemplo

anterior e incluso variables. Escribe este código y comprueba el resultado en tu servidor.

<?php //Ejemplo arrays aprenderaprogramar.com

$indice = 'coche';

Page 9: Continuacion Matrices 2015_II

$colores_vehiculos = array(

$indice => 'Rojo',

'moto' => 'verde',

'avion' => 'amarillo'

);

echo $colores_vehiculos[$indice];

?>

 

 Como ves en este ejemplo hemos usado una variable tipo cadena de texto como índice de

un array.

Finalmente, los arrays asociativos también pueden usarse en la forma de declaración

habitual escribiendo $nombreVariable [indice] = valor. Escribe este ejemplo de código,

guárdalo con un nombre de archivo y súbelo al servidor.

<?php //Ejemplo arrays

aprenderaprogramar.com

$colores_vehiculos ['coche'] = 'Rojo';

$colores_vehiculos ['moto'] = 'verde';

$colores_vehiculos ['avion'] = 'amarillo';

echo $colores_vehiculos['moto'];

?>

 Comprobarás que en la pantalla del navegador se muestra el texto “verde”.