Está en la página 1de 26

Vectores en PHP

Damian Carlos Nieto Casanelli


NDICE

Introduccin
- Cmo se declaran y construyen
- Cmo se estructuran
- EJEMPLOS

ndices
- !"os de !nde#ado y $unc!onam!ento
- EJEMPLOS

%unc!ones nat!&as de PHP "ara su mane'o


- %unc!ones de recorr!do
- %unc!ones de ordenac!n
- %unc!ones de man!"ulac!n
- %unc!ones es"ec!ales "ara &ectores asoc!at!&os
NDICE
IN(OD)CCI*N
Se declaran y se accede a los elementos
med!ante corc+etes, - .
La "r!mera com"onente es cero,
Dentro de un m!smo &ector "uede +a/er
elementos de t!"os d!st!ntos,
Se "uede acceder a un elemento med!ante un
0nd!ce asoc!at!&o,
Pueden ser mult!d!mens!onales1 a2ad!endo m3s
su/0nd!ces,
Se "ueden constru!r med!ante array45
EJEMPLOS
6&ector7-8.97:
6&ector7-7.9;+ola<
6&ector7-=nom/re>.9;Carlos<
6&ector?9array471>Jord!>1@5:
6&ector?9array489A7179A>Jord!>1?9A@5:
6&ector@9array489A@@179A>Juan>1
>nom/re>9A>Sara>1@9AB5:
IPO DE LOS
ELEMENOS
CONSTRUCCIN
6a-8.-7.9;Hola<:
6a-8.-=cla&e>.9;una cosa<:
6a-=cla&e7>.-=cla&e?>.-8.9;otra cosa<:
6a-8.9;nada<:
6a-7.9;+ola<:
6a-.9;mundo<:
MULTIDIMENSIONALES
AUTOASIGNACION
Cs!Dna a 6a-?. el &alor
;mundo<,
EJEMPLOS
6a-.9;a<:
6a-.9;/<: eEu!&ale aF 6a9array4;a<1</<1<c<5:
6a-.9;c<:
6cl!ente79array4
=nom/re> 9A =Juan>1
=edad> 9A ?@1
="ro$es!on> 9A =estud!ante>
5:
VECTORES ASOCIATIVOS
CONSTRUCCIN
EJEMPLOS
NDICES 4 CLCVES 5
)n 0nd!ce "uede ser un nGmero entero o una
cadena de te#to,
S! el 0nd!ce es una cadena no e#!ste un 0nd!ce
entero corres"ond!ente,
S! se om!te el 0nd!ce1 este se Denera
autom3t!camente comenHando "or cero,
S! el &ector ya cont!ene 0nd!ces enteros y se
om!te alDuno1 el s!Du!ente Denerado ser3 el
mayor 0nd!ce entero e#!stente I7,
S! de$!n!mos dos 0nd!ces enteros !Duales1 el
Glt!mo de$!n!do so/reescr!/!r3 al anter!or,
6$rutas 9 array4
=n!s"eroJ9Aarray4JcolorJ9A=amar!lloJ1=sa/orJ9A=dulceJ1
=$ormaJ9A=redondaJ51
="omeloJ 9A array4JcolorJ 9A =amar!lloJ1=sa/orJ 9A =aDr!oJ1
=$ormaJ 9A=redondaJ51
5:
"r!ntKr46$rutas5: Mostrar3F
Crray4
-n!s"ero.9ACrray4-color.9Anaran'a -sa/or. 9Adulce
-$orma. 9Aredonda5
-"omelo.9ACrray4-color.9Aamar!llo -sa/or.9AaDr!o
-$orma.9Aredonda5
5
EJEMPLOS
CNIDCCI*N
6cosas9array4
=$rutas>9Aarray4=a>9A>naran'a>1>/>9A>"latano>1
=c>9A>manHana>5
=numeros>9Aarray471?1@1L1B1M5
=eEu!"os> 9Aarray4="r!mero>1B9A>seDundo>1
>tercero>5
5:
"r!ntKr46cosas5: Mostrar3F
Crray4
-$rutas.9ACrray4-a.9Anaran'a-/. 9A"latano-c. 9AmanHana5
-numeros.9ACrray4-8.9A7-7.9A?-?.9A@-@.9AL-L.9AB-B.9AM5
-eEu!"os.9ACrray4-8.9A"r!mero-B. 9AseDundo-M. 9Atercero5
5
ANIDACIN
EJEMPLOS
6m!&ector9array47171717171N9A71L 9A71??1@ 9AML5:
"r!ntKr46m!&ector5: Mostrar3F
Crray4-8.9A7-7.9A7-?.9A7-@.9AML-L.9A7-N.9A7-O.9A??5
El ML so/reescr!/e al anter!or &alor del elemento @,
El ?? se alo'a en el elemento O Eue es el 0nd!ce de &alor
m3#!mo4N5 m3s uno,
EJEMPLOS
%)NCIONES DE (ECO((IDO
En PHP cada &ector t!ene asoc!ado un "untero !nterno Eue a"unta
a un elemento del &ector y Eue "uede ser usado "ara recorrer
&ectores y otras o"erac!ones1 las $unc!ones Eue o"eran con el
"untero !nterno sonF
reset46array5:
(esetea el "untero !nterno al "r!nc!"!o del array,
end46array5:
Mue&e el "untero al Glt!mo elemento del array,
next46array5:
Mue&e el "untero al "ro#!mo elemento del array,
pre46array5:
Mue&e el "untero al elemento "re&!o res"ecto al actual,
current46array5:
De&uel&e el elemento a"untado actualmente "or el "untero
!nterno del array,
!e"46array5:
De&uel&e el 0nd!ce del elemento a"untado actualmente "or el
"untero !nterno del array1 s! es un &ector asoc!at!&o de&uel&e la
cla&e del elemento actual,
6array79e#c$46array5
De&uel&e un &ector cla&e-&alor con los &alores corres"ond!entes
al elemento actual del array y adem3s mue&e el "untero al
elemento s!Du!ente1 s! es un &ector asoc!at!&o de&uel&e cla&e-
&alor1 s! es un &ector comGn de&uel&e !nd!ce-&alor,
E'em"loF
6"are'a9e#c$46&ec5:
l!st46cla&e16&alor596"are'a:
ec+o4=La "are'a cla&e-&alor actual de &ec es 6cla&e 9 6&alor>5:
%)NCIONES DE (ECO((IDO
%)NCIONES DE O(DENCCION
sort46array5:
Ordena un &ector seDGn los &alores de sus elementos1 s! este es
asoc!at!&o cons!dera cla&es y &alores como elementos
comunes 4no los d!st!nDue5, Ordena en orden ascend!ente,
rsort46array5:
Idem anter!or "ero ordena en orden descend!ente,
#sort46array5:
Ordena un &ector seDGn los &alores de sus elementos "ero
manten!endo las asoc!ac!ones cla&e-&alor, Ordena los "ares
ordenados cla&e-&alor seDGn =&alor>,
#rsort46array5:
Idem anter!or "ero en orden descend!ente,
!sort46array5:
Ordena un &ector asoc!at!&o "or los &alores de sus =cla&es>
ten!endo en cuenta las asoc!ac!ones cla&e-&alor,
!rsort46array5:
Idem anter!or "ero en orden descend!ente,
u!sort46array1$unc!on5:
Ordena un &ector asoc!at!&o "or =cla&e> usando "ara com"arar las
cla&es la $unc!n "asada como "ar3metro,
u#sort46array1$unc!on5:
Ordena un &ector "or los =&alores> de sus elementos "reser&ando
la relac!n cla&e-&alor de un array asoc!at!&o usando "ara
ordenar la $unc!on "ro&!sta "or el usuar!o,
%)NCIONES DE O(DENCCION
6&ector9array4=d>9A>/anana>1 =a>9A>l!mon>1>c>9A>"era>1
=/>9A>aDuacate>5:
%uncin Resu&t#do Resu&t#do
sort'(ector) *#+,*#-u#c#te+,+.+,+.#n#n#+,+c+,+d+,+&i/on+,+per#+
rsort'(ector) *per#+,+&i/on+,+d+,+c+,+.#n#n#+,+.+,+#-u#c#te+,+#+
#sort'(ector) *.+,+#-u#c#te+,+d+,+.#n#n#+,+#+,+&i/on+,+c+,+per#+
#rsort'(ector) *c+,+per#+,+#+,+&i/on+,+d+,+.#n#n#+,+.+,+#-u#c#te+
!sort'(ector) *#+,+&i/on+,+.+,+#-u#c#te+,+c+,+per#+,+d+,+.#n#n#+
!rsort'(ector) *d+,+.#n#n#+,+c+,+per#+,+.+,+#-u#c#te+,+#+,+&i/on+
EJEMPLOS
%)NCIONES DE MCNIP)LCCI*N
0#ddin-1
array9#rr#"2p#d46m!&ector1tama2o1&alor5:
(ellena 6m!&ector con &alor +asta Eue tenDa tama2o
elementos1 s! tama2o es "os!t!&o com"leta aDreDando
elementos +ac!a la derec+a1 s! es neDat!&o com"leta
+ac!a la !HEu!erda,
E'em"loF
6entrada 9 array 47?1 781 O5:
6resultado 9 #rr#"2p#d 46entrada1 B1 85: PP resultadoF
47?1 781 O1 81 85
6resultado 9 #rr#"2p#d 46entrada1 -Q1 -75: PP resultadoF
4-71 -71 -71 -71 7?1 781 O5
List1
L!st en real!dad no es una !nstrucc!n1 s!no una construcc!n
es"ec!al del lenDua'e Eue "erm!te as!Dnar a un Dru"o de
&ar!a/les los elementos de un &ector,
E'em"loF
6&ector9array471?5:
l!st46a16/596&ector: PP6a971 6/9?
S! el &ector t!ene m3s elementos Eue las &ar!a/les Eue se usan en
l!st entonces el Glt!mo elemento de l!st ser3 un &ector con todos
los elementos Eue Eueda/an en Rl 4la as!Dnac!n se +ace de
!HEu!erda a derec+a5,
%)NCIONES DE MCNIP)LCCI*N
Mer-e1
6&ec79#rr#"2/er-e46array716array?1,,,,5:
S! los &ectores son asoc!at!&os +ace una un!n de los &ectores en
donde s! ? o m3s &ectores t!enen la m!sma cla&e slo una
Eueda en el &ector resultado, S! los &ectores no son asoc!at!&os
4!nde#ados "or nGmero5 entonces el resultado t!ene todos los
elementos de los =n> &ectores concatenados,
Su.3Vectores1
6&ec79#rr#"2s&ice46array1o$$set1cant!dad5:
De&uel&e un su/-&ector de 6array a "art!r del o$$set !nd!cado y con
la cant!dad de elementos !nd!cada1s! cant!dad no se es"ec!$!ca
de&uel&e todos los elementos desde o$$set +asta el $!n del
&ector,
6&ec9array4781M1Q1N1?@5:
6res9#rr#"2s&ice46&ec171@5: PPde'a en la &ar!a/le 6res M1Q1N
%)NCIONES DE MCNIP)LCCI*N
Count1
6cant!dad9count46&ector5:
De&uel&e la cant!dad de elementos de un &ector,
Sp&ice1
6&ec79#rr#"2sp&ice46&ec1o$$set1cant!dad16&ecKreem"laHo5:
Sust!tuye los elementos de 6&ec "or los de 6&ecKreem"laHo a
"art!r del o$$set y +asta cant!dad1 s! no le "asamos
&ecKreem"laHo el!m!na los elementos a "art!r del o$$set y +asta
cant!dad,
S! no se "asa cant!dad se el!m!nan o reem"laHan todos los
elementos desde el o$$set !nd!cado +asta el $!n del &ector,
%)NCIONES DE MCNIP)LCCI*N
S$u44&e1
s$u44&e4array5:
Desordena en $orma aleator!a los elementos de un &ector,
0ertenenci#1
6/oolean 9 in2#rr#"46elem16m!array16str!ct5:
De&uel&e &erdadero o $also seDGn 6elem "erteneHca o no a
6m!array1 s! 6str!ct es true tendr3 en cuenta el t!"o de los
&alores,
R#n-e1
6array9r#n-e4loS1+!D+5:
Crea un &ector con los nGmeros corres"ond!entes desde loS
+asta +!D+,
E'em"loF
6&ec9r#n-e4M17?5: PP 6&ec94M1Q1N1O17817717?5:
%)NCIONES DE MCNIP)LCCI*N
Reerse1
array9#rr#"2reerse4array5:
De&uel&e el &ector !n&ert!do,
Co/p#ct1
array9co/p#ct4nom/reK&ar71nom/reK&ar?1,,,,1nom/reK&arN5:
Crea un &ector asoc!at!&o cuyas cla&es son los nom/res de las
&ar!a/les y los &alores el conten!do de las m!smas,
E'em"loF
6c!udad9>m!am!>:
6edad9>?@>:
6&ec9co/p#ct4=c!udad>1>edad>5:
Es eEu!&alente aF
6&ec9array4=c!udad>9A>m!am!>1>edad>9A>?@>5:
%)NCIONES DE MCNIP)LCCI*N
%uncin1
arrayKSalT "erm!te a"l!car una $unc!n a todos y cada uno de los
elementos de un &ector, La s!nta#!s esF
#rr#"25#&!46array71$unc!on1&ar!a/leKe#tra5:
Nos s!r&e "ara a"l!car una $unc!n "asada como "ar3metro a
cada uno de los elementos del &ector 6array71 la $unc!n
rec!/!r3 como "ar3metro en "r!mer luDar el =&alor> del elemento
de 6array7 y en seDundo luDar la =cla&e>1 s! el &ector no es
asoc!at!&o la cla&e es el numero de 0nd!ce 48171?,,,5,
&ar!a/leKe#tra es o"c!onal,
S! se "asa &ar!a/leKe#tra Eue "uede ser cualEu!er t!"o de PHP
!ncluyendo un o/'eto1 la $unc!n rec!/e d!c+a &ar!a/le como
tercer "ar3metro,
%)NCIONES DE MCNIP)LCCI*N
Otr#s 4unciones1
#rr#"2di4445 Calcula las d!$erenc!as entre dos arrays,
#rr#"24i&&45 (ellena un array con &alores,
#rr#"2se#rc$45 Uusca un &alor y de&uel&e su "os!c!on,
#rr#"2su/45 Calcula la suma de todos los &alores,
%)NCIONES DE MCNIP)LCCI*N
%)NCIONES PC(C VECO(ES
CSOCICIVOS
Varray79#rr#"2!e"s46array5
De&uel&e un &ector con todas las cla&es de un &ector asoc!at!&o,
Varray79#rr#"2#&ues46array5
De&uel&e un &ector con todos los &alores de un &ector asoc!at!&o,
U!/l!oDra$0a

C"untes de claseFema Q4PHP5

a'o,t+!nTnerd,comPdocsPcurso"+"PcursoK"+"Kca"K8O,PD%
-------------------------------------------------------------WP(EX)NCSY

También podría gustarte