Sei sulla pagina 1di 5

1

Tema: Matrices en PHP


Se muestra el manejo de arreglos y matrices en PHP y la manera de usar las
matrices como parte de una solucin en casos prcticos
Conocer el manejo de arreglos y matrices en PHP
Usar las matrices como parte de una solucin en casos prcticos
MATRICES
Una matriz arreglo (array en ingles) es un conjunto de aria!les agrupadas
!ajo un "nico nom!re# Cada aria!le dentro de la matriz se denomina elemento#
$entro de la misma matriz pueden e%istir aria!les de di&erentes tipos y no es
necesario 'ue sean todas del mismo tipo#
I. Hay que diferenciar entre los dos tipos de matrices existentes:
a) (nde%ada:
)'uella cuyo acceso a los elementos se realiza por la posicin 'ue
ocupan dentro de la estructura (se inician siempre desde la posicin
*)# +jemplo: ,amigo-*./
!) )sociatia:
+s a'uella en la 'ue los elementos estn &ormados por pares clae0alor
y el acceso se realiza proporcionando una determinada clae# +jemplo:
,amigo-1edad23456.
II. Para crear matrices en PHP existen dos formas:
a) 7orma impl8cita:
9ue consistir8a en indicarle el elemento (ya sea proporcionando su
posicin o su clae)# +jemplo: ,nom!res -*.32juan2/
+n caso de no indicarle una posicin el array tomara el alor siguiente
al "ltimo alor introducido# +jemplo: ,nom!res -.3:;ucas/: << tomar8a
como alor 6 ya 'ue lo ultimo introducido era *#
!) Mediante array( ):
+n el cual le pasamos los elementos como parmetros# +n caso de matriz
inde%ada toman la posicin 'ue ocupan en la creacin de la matriz=
mientras 'ue los de la matriz asociatia se les asigna su alor
mediante >34>#
PHP, Gua 4
Contenido
?!jetio +speci&ico
7acultad: (ngenier8a
+scuela: Computacin
)signatura: PHP
(ntroduccion Teorica
2
+jemplo:,amigo3array(:@om!re:34:Aose:=:$ireccion:34:@eopatria 56:)/
@ota:Ca!e destacar 'ue PHP no solo se limita a la e%istencia de
matrices por s8 solo sino 'ue e%isten matrices de matrices= o lo 'ue es
lo mismo= matrices multidimensionales# +jemplo: ,amigos-5.-:Pedro:.#
imensi!n de una matri"
para administrar la dimension de una matriz usamos#
count(aria!le) numero de elementos en la matriz
sizeo&(matriz) alias de count
arrayBslice(matriz= i= l) recorta la matriz desde CiD= una cantidad ClD de
elementos= y retorna un arreglo resultado
arrayBsEi&t(,matriz) 9uita y retorna un elemento al principio de la
matriz
arrayBpusE(,matriz= alor) inserta en la CmatrizD el CalorD
Eliminar un elemento de matri" o la matri"
Para eliminar un elemento o todos los elementos= utilizamos las siguientes
&unciones#
unset(,matriz-F.)
unset(,matriz)
#a$e%aci!n so&re matrices
Cuando se trata de matrices inde%adas la naegacin es sencilla ya 'ue tan solo
!asta acceder al elemento 'ue 'ueremos mostrar= pero al tratarse de alguna
matriz asociatia no se puede aplicar el mismo tratamiento# Para ello e%isten un
conjunto de &unciones pre&a!ricadas 'ue nos permiten realizar multitud de
acciones:Sinta%is )ccin
reset(matriz) +l puntero interno uele a la primera posicin
end(matriz) +l puntero interno a a la "ltima posicin
ne%t(matriz) +l puntero a al elemento siguiente
pre(matriz) )ccede al elemento anterior
current(matriz) $euele el contenido del elemento actual
'rdenar una matri"
;as matrices pueden ordenarse a partir de los alores almacenados o de los
8ndices (llaes)
sort(,matriz) ordena la matriz a partir de alores almacenados
Gsort(,matriz) ordena a partir del 8ndice
asort(,matriz) ordena un arreglo asociatio a partir del alor
PHP, Gua 4
3
Hu8a de la!oratorio 5
Seridor Ie! con interprete PHP
+ditar los siguientes cdigos ejemplo de PHP:
6) ejemploB6#pEp
<?php
//imprimiendo matriz
$matriz=array(1,2,3,5);
echo $matriz[2];//imprime 3
?>
5) ejemploB5#pEp
<?php
//ordenando un arreglo por
$matrizz=array('juan'=>21,'pedro'=>23, 'manuel'=>29,'enrrique'=>51);
echo ordenando matriz por el indice:<br>;
if(ksort($matrizz)){
foreach($matrizz as $key => $val)
echo $key tiene $val aos<br>;
}
?>
J9ue retorna la &uncion Gsort()K
L) ejemploBL#pEp
<?php
//cuantas filas tiene esta matriz?
$matriz = array("unamatriz" => array(6 => 5, 13 => 9, "a" => 42));
echo $matriz["unamatriz"][6]; // 5
echo $matriz["unamatriz"][13]; // 9
echo $matriz["unamatriz"]["a"]; // 42
?>
J$e cuantas dimensiones es la matrizK
M) ejemploBM#pEp
<?php
//imprimiendo una matriz
$pais=array(
espana=>array(nombre=>Espana,lengua=>Castellano,moneda=>Peseta),
francia=>array(nombre=>Francia,lengua=>Frances,moneda=>Franco),
inglaterra=>array(nombre=>inglaterra,lengua=>ingles,moneda=>libra)
);
foreach($pais as $key => $val){
echo Acerca de $key<br>;
echo <ul>;
foreach($val as $campo=>$dato)
echo <li>$campo: $dato</li>;
echo </ul>;
}
?>
J$e 'ue tipo es la aria!le ,arK= J9ue contieneK
PHP, Gua 4
Material y +'uipo
Procedimiento
4
6# Modi&i'ue el ejemplo 6 para 'ue recorra la matriz Eaciendo uso de
las &unciones ne%= pre= end y reset#
5# Modi&i'ue los ejemplos 5 y M de manera 'ue los arreglos se impriman
ordenadamente= por alor y por 8ndice#
L# Modi&i'ue el ejemplo M de modo 'ue solo se muestren los arreglos de
7rancia e (nglaterra= Eaga uso de la &uncin arrayBslice
M# Modi&i'ue el ejemplo 5 de modo 'ue solo se muestre el primero y el
ultimo elemento del arreglo= Eaga uso de las &unciones reset=
current y end#
(nestigue la manera de Eacer una &uncin con PHP# ;uego Eaga
una &uncin llamada CordenarD de ordenamiento por alor 'ue
tome como parmetro una matriz numNrica y retorne una matriz
ordenada(no usar la &uncin sort)
PHP, Gua 4
+jercicios
(nestigacion complementaria
5
PHP, Gua 4
Hoja de cotejo: M
Hu8a M: Matrices en PHP
)lumno:
$ocente:
Ma'uina @o:
H;: 7ecEa:
E(A)*ACI'#
+ ,-. /-0 1-,2 #ota
C'#'CIMIE#T' $el
5*
al
L*O
Conocimiento
de&iciente de
los
&undamentos
tericos
Conocimiento
y e%plicacin
incompleta de
los
&undamentos
tericos
Conocimiento
completo y
e%plicacin
clara de los
&undamentos
tericos
AP)ICACI3#
E)
C'#'CIMIE#T'
$el
M*O
al
P*O
ACTIT*
$el
6FO
al
L*O
@o tiene
actitud
proactia#
)ctitud
propositia y
con
propuestas no
aplica!les al
contenido de
la gu8a#
Tiene actitud
proactia y
sus
propuestas
son
concretas#
T'TA) 6**O

Potrebbero piacerti anche