Está en la página 1de 0

Curso: "Programacin Orientada a Objetos PHP5" 2013

Trabajando con Arreglos


Mdulo 2 / parte 2

Todos los logos y marcas utilizados en este
documento, estn registrados y pertenecen a
sus respectivos dueos.
AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 1

Curso: "Programacin Orientada a Objetos PHP5" 2013

Objetivo
El objetivo de esta prctica de laboratorio ser aprender los conceptos bsicos de las matrices o arreglos
en PHP, adems de crear matrices veremos cmo agregar y eliminar elementos a partir de ella.
Diferentes formas de iteracin, arreglos por ndice, arreglos asociativos, arreglos bidimensionales y
recursividad.

AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 2

Curso: "Programacin Orientada a Objetos PHP5" 2013

Ejercicio 1: Ejemplo Mi Arreglo:
1. Abrir Netbeans IDE
2. Crear un proyecto Netbeans: PHP Application
Seleccionar File desde el men superior y seleccionar New Project.
Observar que aparece la ventana de dialogo New Project.
Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo la seccin Projects.
Clic Next.

AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 3

Curso: "Programacin Orientada a Objetos PHP5" 2013


Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese.
Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del
Web Root (carpeta htdocs de apache) de nuestro servidor web apache, si estamos
usando Xampp debera estar dentro de C:\xampp\htdocs\ProyectoMiArreglo. En el
ejemplo usaremos el servidor de Zend por lo tanto nuestro Source Folder debe ser
C:\Zend\Apache2\htdocs\ProyectoMiArreglo
Clic Finish.
AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 4

Curso: "Programacin Orientada a Objetos PHP5" 2013


Observe que el proyecto ProyectoMiArreglo ha sido creado bajo la pestaa Projects de
NetBeans IDE y adems ha generado automticamente el archivo index.php el cual es
desplegado en el editor de cdigo del IDE.

3. Modificar el contenido generado por el IDE en el index.php.
Modifique index.php como se muestra en el Cdigo de abajo. Los fragmentos de cdigo
que hay que agregar reemplazar se resaltan en negrita y color azul.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
// Declaramos y inicializamos un arreglos de se strings con paises
$paises = array("Chile", "Espaa", "Argentina", "Mxico", "Ecuador", "Per", "Brazil", "Estados Unidos", "Inglaterra",
"Alemania");

// Desplegamos el valor de cada elemento del arreglo
for ($i = 0; $i < count($paises); $i++) {
echo "$i - $paises[$i]";
echo "<br />";
}
?>
</body>
</html>
AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 5

Curso: "Programacin Orientada a Objetos PHP5" 2013


4. Construir y ejecutar el programa
Clic derecho del mouse sobre el proyecto ProyectoMiArreglo y seleccionar Run.
Observe el resultado en el Navegador. (Figura de abajo)


AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 6

Curso: "Programacin Orientada a Objetos PHP5" 2013

5. Volver a modificar el archivo index.php
Modifique index.php como se muestra en el Cdigo de abajo. Los fragmentos de cdigo
que hay reemplazar se resaltan en negrita y color azul
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
// Declaramos y inicializamos un arreglo vacio
$paises = array();

// Agregamos dinmicamente elementos a la matriz
// Otra forma alternativa del ejemplo anterior
$paises[] = "Chile";
$paises[] = "Espaa";
$paises[] = "Argentina";
$paises[] = "Mxico";
$paises[] = "Ecuador";
$paises[] = "Per";
$paises[] = "Brazil";
$paises[] = "Estados Unidos";
$paises[] = "Inglaterra";
$paises[] = "Alemania";

// Desplegamos el valor de cada elemento del arreglo
for ($i = 0; $i < count($paises); $i++) {
echo "$i - $paises[$i]";
echo "<br />";
}
?>
</body>
</html>

6. Construir y ejecutar el programa
Clic derecho del mouse sobre el proyecto ProyectoMiArreglo y seleccionar Run.
Observe el resultado en el Navegador. (Figura de abajo)

AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 7

Curso: "Programacin Orientada a Objetos PHP5" 2013

Ejercicio 2: Ejemplo Proyecto Arreglo de Edades dinmicas:
1. Abrir Netbeans IDE
2. Crear un proyecto Netbeans: PHP Application
Seleccionar File desde el men superior y seleccionar New Project.
Observar que aparece la ventana de dialogo New Project.
Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo la seccin Projects.
Clic Next
Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese
ProyectoArregloEdades. Este es el nombre que se le dar al proyecto.
Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del
Web Root (carpeta htdocs de apache) de nuestro servidor web apache. Si usamos
XAMPP: C:\xampp\htdocs\ProyectoArregloEdades, si usamos Zend Server
C:\Zend\Apache2\htdocs\ProyectoArregloEdades
Clic Finish.
Observe que el proyecto ProyectoArregloEdades ha sido creado bajo la pestaa
Projects de NetBeans IDE y adems ha generado automticamente el archivo index.php

3. Modificar el contenido generado por el IDE en el index.php.
Modifique index.php como se muestra en el Cdigo de abajo. Los fragmentos de cdigo
que hay que agregar reemplazar se resaltan en negrita y color azul.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
// Declaramos y inicializamos un arreglos del tipo int con tamao para 10 elementos
$edades = array_fill(0, 10, 0);

// Agregamos elementos al arreglo, el ndice multiplicado por 10.
for( $i=1; $i < count($edades); $i++ ){
$edades[$i] = $i * 10;
}

// Desplegamos el valor de cada elemento del arreglo
for( $i=1; $i < count($edades); $i++ ){
echo "Edad: $edades[$i] <br />";
}

?>
</body>
</html>


AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 8

Curso: "Programacin Orientada a Objetos PHP5" 2013

4. Construir y ejecutar el programa
Clic derecho del mouse sobre el proyecto ProyectoArregloEdades y seleccionar Run.
Observe el resultado en el navegador

AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 9

Curso: "Programacin Orientada a Objetos PHP5" 2013

Ejercicio 3: Ejemplo Arreglo Asociativo: es un arreglo asociativo que contiene un par (clave => valor),
es decir un mapa que asocia un nombre o llave hacia un valor.
1. Abrir Netbeans IDE
2. Crear un proyecto Netbeans: PHP Application
Seleccionar File desde el men superior y seleccionar New Project.
Observar que aparece la ventana de dialogo New Project.
Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo la seccin Projects.
Clic Next
Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese
EjemploArregloAsociativo. Este es el nombre que se le dar al proyecto.
Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del
Web Root (carpeta htdocs de apache) de nuestro servidor web apache.
Clic Finish.
Observe que el proyecto EjemploArregloAsociativo ha sido creado bajo la pestaa
Projects de NetBeans IDE y adems ha generado automticamente el index.php el cual
es desplegado en el editor de cdigo del IDE

3. Modificar el contenido generado por el IDE en index.php.
Modifique index.php como se muestra en el Cdigo de abajo. Los fragmentos de cdigo
que hay que agregar reemplazar se resaltan en negrita y color azul.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
$persona = array();

$persona["id"] = 1;
$persona["nombre"] = "John";
$persona["apellido"] = "Doe";
$persona["edad"] = 25;
$persona["email"] = "john.doe@dominio.com";

echo "{$persona["nombre"]} {$persona["apellido"]} tiene {$persona["edad"]} aos y su correo es {$persona["email"]}";
?>
</body>
</html>


AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 10

Curso: "Programacin Orientada a Objetos PHP5" 2013

4. Construir y ejecutar el programa
Clic derecho del mouse sobre el proyecto EjemploArregloAsociativo y seleccionar Run.
Observe el resultado en el Navegador. (Figura de abajo)

5. Volver a modificar el archivo index.php
Modifique index.php como se muestra en el Cdigo de abajo. Los fragmentos de cdigo
que hay reemplazar se resaltan en negrita y color azul
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
// Declaramos y inicializamos un arreglo asociativo y asignamos valores en su inicializamos
// Otra forma alternativa del ejemplo anterior
$persona = array("id"=>1, "nombre"=>"John", "apellido" =>"Doe","edad"=>25,"email"=>"john.doe@dominio.com");

echo "{$persona["nombre"]} {$persona["apellido"]} tiene {$persona["edad"]} aos y su correo es {$persona["email"]}";
?>
</body>
</html>

6. Construir y ejecutar el programa
Clic derecho del mouse sobre el proyecto EjemploArregloAsociativo y seleccionar Run.
Observe el resultado en el Navegador. (Figura de abajo)

AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 11

Curso: "Programacin Orientada a Objetos PHP5" 2013

Ejercicio 4: Ejemplo Arreglo Asociativo bidimensional
1. Abrir Netbeans IDE
2. Crear un proyecto Netbeans: PHP Application
Seleccionar File desde el men superior y seleccionar New Project.
Observar que aparece la ventana de dialogo New Project.
Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo la seccin Projects.
Clic Next
Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese
EjemploArregloAsociativoBidimensional. Este es el nombre que se le dar al proyecto.
Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del
Web Root (carpeta htdocs de apache) de nuestro servidor web apache.
Clic Finish.
Observe que el proyecto EjemploArregloAsociativoBidimensional ha sido creado bajo la
pestaa Projects de NetBeans IDE y adems ha generado automticamente el
index.php el cual es desplegado en el editor de cdigo del IDE

3. Modificar el contenido generado por el IDE en index.php.
Modifique index.php como se muestra en el Cdigo de abajo. Los fragmentos de cdigo
que hay que agregar reemplazar se resaltan en negrita y color azul.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
$persona = array();

$persona["id"] = 1;
$persona["nombre"] = "John";
$persona["apellido"] = "Doe";
$persona["edad"] = 25;
$persona["emails"] = array("john.doe@dominio.com","john.doe123@gmail.com","john.doe@empresa.cl");
$persona["constante_pi"] = 3.14159265;
$persona["login"] = true;
$persona["direccion"] = array(
"pais" => "Chile",
"region" => "Metropolitana",
"ciudad" => "Santiago",
"comuna" => "Providencia",
"calle" => "Av. Providencia 12345",
"codigo_postal" => 1001);

foreach ($persona as $nombre => $elemento) {

if (is_array($elemento)) {
echo "<strong>$nombre:</strong> <br />";
AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 12

Curso: "Programacin Orientada a Objetos PHP5" 2013

foreach ($elemento as $nombre => $elemento2) {
echo "---" . $nombre . "=>" . $elemento2;
echo "<br />";
}
} else {
echo $nombre . "=>" . $elemento;
echo "<br />";
}
}

echo "<br />";
echo "{$persona["nombre"]} {$persona["apellido"]} tiene {$persona["edad"]} aos y sus correos son :" . implode(", ",
$persona["emails"]);
?>
</body>
</html>

4. Construir y ejecutar el programa
Clic derecho del mouse sobre el proyecto EjemploArregloAsociativoBidimensional y
seleccionar Run.
Observe el resultado en el Navegador. (Figura de abajo)

AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 13

Curso: "Programacin Orientada a Objetos PHP5" 2013

Ejercicio 5: Ejemplo de formas de iterar una arreglo:
1. Abrir Netbeans IDE
2. Crear un proyecto Netbeans: PHP Application
Seleccionar File desde el men superior y seleccionar New Project.
Observar que aparece la ventana de dialogo New Project.
Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo la seccin Projects.
Clic Next
Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese
EjemploFormasIternadoArreglo. Este es el nombre que se le dar al proyecto.
Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del
Web Root (carpeta htdocs de apache) de nuestro servidor web apache.
Clic Finish.
Observe que el proyecto EjemploFormasIternadoArreglo ha sido creado bajo la pestaa
Projects de NetBeans IDE y adems ha generado automticamente el index.php el cual
es desplegado en el editor de cdigo del IDE

3. Modificar el contenido generado por el IDE en index.php.
Modifique index.php como se muestra en el Cdigo de abajo. Los fragmentos de cdigo
que hay que agregar reemplazar se resaltan en negrita y color azul.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
// Declaramos y inicializamos un arreglo vacio
$paises = array();

// Agregamos dinmicamente elementos a la matriz
// Otra forma alternativa del ejemplo anterior
$paises[] = "Chile";
$paises[] = "Espaa";
$paises[] = "Argentina";
$paises[] = "Mxico";
$paises[] = "Ecuador";
$paises[] = "Per";
$paises[] = "Estados Unidos";


// Desplegamos el valor de cada elemento del arreglo
echo "================= Iterando con For =================<br />";
for ($i = 0; $i < count($paises); $i++) {
echo "$i - $paises[$i]";
echo "<br />";
}

AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 14

Curso: "Programacin Orientada a Objetos PHP5" 2013

echo "================= Iterando con While =================<br />";
$i = 0;
while ($i < count($paises)) {
echo "$i - $paises[$i]";
echo "<br />";
$i++;
}

echo "================= Iterando con Do While =================<br />";
$i = 0;
do {
echo "$i - $paises[$i]";
echo "<br />";
$i++;
} while ($i < count($paises));

echo "================= Iterando con Foreach =================<br />";
foreach ($paises as $pais) {
echo "$pais <br />";
}

echo "================= Iterando con Foreach con Llave =================<br />";
foreach ($paises as $llave => $pais) {
echo "$llave - $pais <br />";
}

echo "================= Iterando con Iterator =================<br />";
$it = new ArrayIterator($paises);
while ($it->valid()) {
echo $it->key() . "-" . $it->current() . "<br />";
$it->next();
}

echo "================= Iterando con ArrayObject =================<br />";
$lista = new ArrayObject($paises);
$it = $lista->getIterator();
while ($it->valid()) {
echo $it->key() . "-" . $it->current() . "<br />";
$it->next();
}
?>
</body>
</html>


AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 15

Curso: "Programacin Orientada a Objetos PHP5" 2013

4. Construir y ejecutar el programa
Clic derecho del mouse sobre el proyecto EjemploFormasIternadoArreglo y seleccionar
Run.
Observe el resultado en el Navegador. (Figura de abajo)



AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 16

Curso: "Programacin Orientada a Objetos PHP5" 2013

Ejercicio 6: Ejemplo de Arreglo Bidimensional, Dos Dimensiones:
1. Abrir Netbeans IDE
2. Crear un proyecto Netbeans: PHP Application
Seleccionar File desde el men superior y seleccionar New Project.
Observar que aparece la ventana de dialogo New Project.
Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo la seccin Projects.
Clic Next
Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese
EjemploArregloDosDimensiones. Este es el nombre que se le dar al proyecto.
Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del
Web Root (carpeta htdocs de apache) de nuestro servidor web apache.
Clic Finish.
Observe que el proyecto EjemploArregloDosDimensiones ha sido creado bajo la
pestaa Projects de NetBeans IDE y adems ha generado automticamente el
index.php el cual es desplegado en el editor de cdigo del IDE

3. Modificar el contenido generado por el IDE en index.php.
Modifique index.php como se muestra en el Cdigo de abajo. Los fragmentos de cdigo
que hay que agregar reemplazar se resaltan en negrita y color azul.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
$matriz = array();

// Inicializamos en la matriz 3 arreglos: Llenamos la primera con 2 elementos, el segundo con 3 y 4.
$matriz[0] = array_fill(0, 2, 0);
$matriz[1] = array_fill(0, 3, 0);
$matriz[2] = array_fill(0, 4, 0);

for ($i = 0; $i < count($matriz); $i++) {
for ($j = 0; $j < count($matriz[$i]); $j++) {
$matriz[$i][$j] = $i * $j;
}
}

for ($i = 0; $i < count($matriz); $i++) {
for ($j = 0; $j < count($matriz[$i]); $j++) {
echo $matriz[$i][$j] . " ";
}
echo "<br />";
}
?>
</body></html>
AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 17

Curso: "Programacin Orientada a Objetos PHP5" 2013

4. Construir y ejecutar el programa
Clic derecho del mouse sobre el proyecto EjemploArregloDosDimensiones y seleccionar
Run.
Observe el resultado en el Navegador. (Figura de abajo)
0 0
0 1 2
0 2 4 6

AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 18

Curso: "Programacin Orientada a Objetos PHP5" 2013

Ejercicio 7: Segundo Ejemplo de Arreglo Bidimensional:
1. Abrir Netbeans IDE
2. Crear un proyecto Netbeans: PHP Application
Seleccionar File desde el men superior y seleccionar New Project.
Observar que aparece la ventana de dialogo New Project.
Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo la seccin Projects.
Clic Next
Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese
EjemploArregloBidimensionalUsuarios. Este es el nombre que se le dar al proyecto.
Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del
Web Root (carpeta htdocs de apache) de nuestro servidor web apache.
Clic Finish.
Observe que el proyecto EjemploArregloBidimensionalUsuarios ha sido creado bajo la
pestaa Projects de NetBeans IDE y adems ha generado automticamente el
index.php el cual es desplegado en el editor de cdigo del IDE

3. Modificar el contenido generado por el IDE en index.php.
Modifique index.php como se muestra en el Cdigo de abajo. Los fragmentos de cdigo
que hay que agregar reemplazar se resaltan en negrita y color azul.
<?php
$listadoUsuarios = array();

$andres = array("id" => 1,
"nombre" => "Andrs",
"apellido" => "Guzmn",
"edad" => 33,
"email" => "andresguzf@gamil.com");

$john = array("id" => 2,
"nombre" => "John",
"apellido" => "Doe",
"edad" => 25,
"email" => "john.doe@dominio.com");

$bruce = array("id" => 3,
"nombre" => "Bruce",
"apellido" => "Lee",
"edad" => 31,
"email" => "bruce.lee@dominio.com");

$rasmus = array("id" => 4,
"nombre" => "Rasmus",
"apellido" => "Lerdorf",
"edad" => 40,
"email" => "Rasmus.Lerdorf.com");

$linus = array("id" => 5,
"nombre" => "Linus Benedict",
AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 19

Curso: "Programacin Orientada a Objetos PHP5" 2013

"apellido" => "Torvalds",
"edad" => 40,
"email" => "Linus.Benedict.com");

$bill = array("id" => 6,
"nombre" => "Bill",
"apellido" => "Gates",
"edad" => 40,
"email" => "bill.gates.com");

$listadoUsuarios[] = $andres;
$listadoUsuarios[] = $john;
$listadoUsuarios[] = $bruce;
$listadoUsuarios[] = $rasmus;
$listadoUsuarios[] = $linus;
$listadoUsuarios[] = $bill;
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<table border="1">
<thead>
<tr>
<th>Id</th>
<th>Nombre</th>
<th>Apellido</th>
<th>Edad</th>
<th>Email</th>
</tr>
</thead>
<tbody>
<?php foreach($listadoUsuarios as $usuario) {?>
<tr>
<td><?php echo $usuario["id"] ?></td>
<td><?php echo $usuario["nombre"] ?></td>
<td><?php echo $usuario["apellido"] ?></td>
<td><?php echo $usuario["edad"] ?></td>
<td><?php echo $usuario["email"] ?></td>
</tr>
<?php } ?>
</tbody>
</table>
</body>
</html>


AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 20

Curso: "Programacin Orientada a Objetos PHP5" 2013

4. Construir y ejecutar el programa
Clic derecho del mouse sobre el proyecto EjemploArregloBidimensionalUsuarios y
seleccionar Run.
Observe el resultado en el Navegador. (Figura de abajo)


AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 21

Curso: "Programacin Orientada a Objetos PHP5" 2013

Ejercicio 8: Segundo Ejemplo de Arreglo Asociativo Bidimensional Recursivo usando Funcin
Recursiva:
1. Abrir Netbeans IDE
2. Crear un proyecto Netbeans: PHP Application
Seleccionar File desde el men superior y seleccionar New Project.
Observar que aparece la ventana de dialogo New Project.
Seleccionar PHP bajo Categories, y Seleccionar PHP Application bajo la seccin Projects.
Clic Next
Bajo el panel Name and Location, para el Nombre del Proyecto (Project Name), ingrese
EjemploArregloRecursividad. Este es el nombre que se le dar al proyecto.
Verificar (Muy importante) en Sources Folder que el proyecto se encuentre dentro del
Web Root (carpeta htdocs de apache) de nuestro servidor web apache.
Clic Finish.
Observe que el proyecto EjemploArregloRecursividad ha sido creado bajo la pestaa
Projects de NetBeans IDE y adems ha generado automticamente el index.php el cual
es desplegado en el editor de cdigo del IDE

3. Modificar el contenido generado por el IDE en index.php.
Modifique index.php como se muestra en el Cdigo de abajo. Los fragmentos de cdigo
que hay que agregar reemplazar se resaltan en negrita y color azul.
<?php

function arregloRecursiovo(array $arreglo, $nivel = 0){

foreach ($arreglo as $llave => $elemento) {
$repeat = str_repeat("==", $nivel);
if(is_array($elemento) ){
echo $repeat . "<strong>" . $llave . "</strong>" . "<br />";
arregloRecursiovo($elemento, $nivel+1);
} else {
echo $repeat . $elemento . "<br />";
}
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php

$regiones = array(
"Sur Amrica"=>array(
"Chile",
AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 22

Curso: "Programacin Orientada a Objetos PHP5" 2013

"Argentina",
"Mxico",
"Per",
"Ecuador",
"Brazil"),
"Norte Amrica" => array(
"Amrica USA"=> array(
"Alaska",
"USA"),
"Canad"),
"Europa" => array(
"Inglaterra",
"Alemania",
"Francia",
"Italia",
"Espaa",
"Blgica",
"Holanda",
"Polonia",
"Rusia",
"Austria"),
"Africa" => array(
"Ruanda",
"Congo",
"Mozambique",
"Nigeria",
"Namibia",
"Libia",
"Argelia",
"Botsuana",
"Marruecos",
"Desiertos" => array(
"Desierto Namibia",
"Desierto del Kalahari",
"Desierto Sahara"),
"Rios" => array(
"Nilo",
"Zambeze",
"Congo")),
"Asia" => array(
"China",
"Korea" => array(
"Korea del Norte",
"Korea del Sur"),
"Japn",
"India",
"Afganistn",
"Turquia"),
"Medio Oriente" => array(
"Egipto",
"Arabia" =>array(
"Dubi",
"Arabia Saudita",
"Jordania",
"Kuwait",
"Omn",
"Yemen"),
"Israel",
AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 23

Curso: "Programacin Orientada a Objetos PHP5" 2013

"Irak",
"Libia"));

arregloRecursiovo($regiones);

?>
</body>
</html>

4. Construir y ejecutar el programa
Clic derecho del mouse sobre el proyecto EjemploArregloRecursividad y seleccionar
Run.
Observe el resultado en el Navegador. (Figura de abajo)


AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 24

Curso: "Programacin Orientada a Objetos PHP5" 2013

Resumen
En este workshop, hemos expuesto y aprendido los conceptos sobre los arreglos en PHP, vimos las
diferentes formas de delcarar e inicializar matrices, agregar elementos. Tambin abarcamos las formas
de iteracin, arreglos por ndice, arreglos asociativos, arreglos bidimensionales y recursividad.










Enva tus consultas a los foros!
Aqu es cuando debes sacarte todas las dudas
haciendo consultas en los foros
correspondientes
AUTORES: andresguzf@gmail.com WEB: http://formacion-bdi.bolsadeideas.cl | | Arreglos 25

También podría gustarte