Download - Sesion 04 - Arreglos (Arrays)
Arreglos (Arrays)
FACULTAD DE INGENIERIA DE SISTEMAS – F.I.S. - UNICA
Ing. Erwin Peña CasasMag. Ingeniería de Sistemas
ArreglosMuy empleado para la recuperación de datos a partir de
tablas.
Un arreglo es una matriz de un conjunto de valores, donde existe un nombre de grupo y un subíndice para cada elemento.
Tipos de ArreglosArreglo NormalArreglo asociativo
Arreglo NormalEn este caso el arreglo tiene un nombre, los elementos
se referencian con un subíndice.
$distrito[0]=“Parcona”;$distrito[1]=“Tinguiña”;$distrito[2]=“Guadalupe”;$distrito[3]=“Ocucaje”;
$distrito[]=“Subtanjalla”; elemento 4$distrito[]=“Los Molinos”; elemento 5
Otra forma:
$distrito=array(“Parcona”, “Tinguiña”, “Ocucaje”);
Para leer datos de una arreglo, se usa la instrucciónforeach<?
$distrito=array((“Parcona”, “Tinguiña”, “Ocucaje”);foreach($distrito as $d){
echo $d. “<br>”;}
?>
arreglo01.html
Código PHP Asociado (arreglo01.php)
<?echo “Asignaturas Seleccionadas”.”<br>”;foreach($asignatura as $lista){
echo “$lista <br>”;}
echo "<p><a href=arreglo01.html>Volver</p> \n";
?>
Arreglo AsociativoMuy empleado en la recuperación de registros de una
tabla; en este tipo de arreglos los subíndices no son números sino palabras o textos a quienes se les asigna los valores:
$distrito[“Parcona”]=7500;$distrito[“Tinguiña”]=6800;$distrito[“Ocucaje”]=2500;
Se le ha asignado la población a cada distrito
Otra Forma:$distrito=array(“Parcona”=>7500, “Tinguiña”=>6800,
“Ocucaje”=>2500);
Echo $distrito[“Tinguiña”];
Manejo de ArreglosCurrent Devuelve el valor que indica el puntero
Reset puntero al primer elemento del arregloEnd puntero al último elemento del arregloNext mueve el puntero al siguiente elementoPrev mueve el puntero al anterior elemento
Count devuelve el numero de elementos del arreglo.
<?$poblacion=array(“Parcona”=>7500, “Tinguiña”=>6800, “Ocucaje”=>2500);echo “numero de elementos “;echo count($poblacion).”<br>”;
reset($poblacion);echo “Puntero al primer elemento”;echo current($poblacion).”<br>”;
next($poblacion);echo “Puntero al siguiente elemento”;echo current($poblacion).”<br>”;
?>
<?echo “Recorrer todos los registros”;reset(“poblacion”);
foreach($poblacion as $pobladores){echo “$pobladores <br>”;
}?>
Funciones each() y list() La función each(), retorna el valor del elemento actual y
desplaza el puntero al siguiente elemento, al llegar al final retorna FALSE, dando por finalizado el bucle.
La función list(), asigna los valores extraídos de un arreglo mediante each() a una lista de variables.
<?$poblacion=array(“Parcona”=>7500, “Tinguiña”=>2800, “Ocucaje”=>2500);
reset($poblacion);while(list($clave,$valor)=each($poblacion)){
echo “En el distrito de : “.$clave.” hay”;echo $valor.”Pobladores <br>”;
}?>
Acceso.html
Acceso.php<?$usuarios=array("erwin"=>"betowen","edgar"=>"chichi","alber
to"=>"chuky");$nombre=$_GET['nombre'];$clave=$_GET['clave'];
reset($usuarios);
while(list($nom,$cla)=each($usuarios)){if($nombre==$nom && $clave==$cla){
echo "bienvenido al sistema";}}?>
Función key()La función key() accede al índice o clave de un arreglo
asociativo.<?
$poblacion=array(“Parcona”=>7500, “Tinguiña”=>2800, “Ocucaje”=>2500);for((reset($poblacion);$clave=key($poblacion);
next($poblacion)){
echo “$clave tiene $poblacion[$clave] Pobladores<br>”;
}?>
Ordenar Arreglos normales
Rsort(arreglo) Ordenamiento descendenteSort Ordenamiento ascendente
<?$distritoica=array(“Parcona”, “Pueblo Nuevo”,
“Santiago”, “La Tinguiña”);Rsort($distritoica);Foreach($distritoica as $distrito){
echo “$distrito<br>”;}?>
Lista no Ordenada y Ordenada<?$distritoica=array(“Parcona”, “Pueblo Nuevo”,
“Santiago”, “La Tinguiña”);For each($distritoica as $distrito){
echo “distrito <br>”;}Echo “Ahora lista ordenada”;Sort($distritoica);For each($distritoica as $distrito){
echo “distrito <br>”;}?>
Tarea – Ordenar arreglos asociativos
FUNCIONES del sistema Funciones de cadena rtrim(cuerda)
ltrim(cuerda)trim(cuerda)strlen(cuerda)strtoupper(cuerda)strtolower(cuerda)substr(cuerda,inicio [,longitud])
ucfirst(cuerda)ucwords(cuerda)
Funciones numéricasabs(numero)round(double)sqrt(float)pi(void)max(arg1, arg2, arg3)min(arg1, arg2, arg3)rand()rand(int min [,int max])
Cálculos con arreglosMax(arreglo) min(arreglo)Para hallar el máximo y mínimo valor de un arreglo
<?$vendedores=array(“Juan”=>1200,”Rosa”=>1450,”Ped
ro”=>1860);Echo “La Mayor y la Menor venta es :”;Echo max($vendedores);Echo min($vendedores);?>
Ingresar las 4 notas y obtener el promedio, teniendo en cuenta que la nota mas baja se debe eliminar y procesar solo 3 notas
Calcule los números para la obtención del resultado del juego teniendo en cuenta que el juego usa números entre 1- 45
Arreglos multidimensionales
Se presenta cuando en un arreglo, cada elemento es a su vez otro arreglo.
<?$ventas[]=array(“Parcona”,15,2500);$ventas[]=array(“TInguiña”,18,2600);$ventas[]=array(“Subtanjalla”,12,2300);While(list($clave,$valor)=each($ventas)){
$distrito=$valor[0];$vendedor=$valor[1];$total=$valor[2];echo “Distrito : “.$distrito. “vendedores :”.$vendedor;echo “Ventas :”.$total.”<br>”;
?>
Tarea – 05 ejemplo con arreglos
multidimensionales