SlideShare uma empresa Scribd logo
1 de 68
“Introducción a PHP" 
Pablo Mamani
IInnttrroodduucccciióónn aa PPHHPP 
• LLeenngguuaajjeess ddee ssccrriipptt 
– PPHHPP eess uunn lleenngguuaajjee ddee ssccrriipptt ddeell llaaddoo ddeell sseerrvviiddoorr.. OOttrrooss 
lleenngguuaajjeess ssiimmiillaarreess ssoonn AASSPP,, JJSSPP oo CCoollddFFuussiioonn 
– LLooss ssccrriippttss PPHHPP eessttáánn iinnccrruussttaaddooss eenn llooss ddooccuummeennttooss HHTTMMLL yy eell 
sseerrvviiddoorr llooss iinntteerrpprreettaa yy eejjeeccuuttaa aanntteess ddee sseerrvviirr llaass ppáággiinnaass aall 
cclliieennttee 
– EEll cclliieennttee nnoo vvee eell ccóóddiiggoo PPHHPP ssiinnoo llooss rreessuullttaaddooss qquuee pprroodduuccee
IInnttrroodduucccciióónn aa PPHHPP 
• ¿CCóómmoo ffuunncciioonnaa PPHHPP?? 
Servidor web Cliente 
Página 
HTML 
Página 
HTML 
internet 
(navegador) 
<P>Hola, Ana</P>
IInnttrroodduucccciióónn aa PPHHPP 
• ¿CCóómmoo ffuunncciioonnaa PPHHPP?? 
Página 
PHP 
Servidor web Cliente 
Intérprete 
PHP 
Página 
HTML 
Página 
HTML 
internet 
(navegador) 
<?PHP 
$nombre = "Ana"; 
print ("<P>Hola, $nombre</P>"); 
?> 
<P>Hola, Ana</P>
IInnttrroodduucccciióónn aa PPHHPP 
• BBrreevvee hhiissttoorriiaa ddee PPHHPP 
– CCrreeaaddoo ppoorr RRaassmmuuss LLeerrddoorrff ppaarraa uussoo ppeerrssoonnaall eenn 11999944 
– PPHHPP == PPeerrssoonnaall HHyyppeerrtteexxtt PPrroocceessssoorr 
– VVeerrssiióónn aaccttuuaall:: PPHHPP 55 
– EEss uunn mmóódduulloo qquuee ssee aaññaaddee aall sseerrvviiddoorr wweebb yy ffuuee 
ccoonncceebbiiddoo iinniicciiaallmmeennttee ppaarraa AAppaacchhee 
• ¿PPoorr qquuéé PPHHPP?? 
– PPoorr ssuuss vveennttaajjaass:: eess ppootteennttee,, ffáácciill ddee aapprreennddeerr,, ddee lliibbrree 
ddiissttrriibbuucciióónn,, ppeerrmmiittee eell aacccceessoo aa bbaasseess ddee ddaattooss yy oottrraass 
ffuunncciioonnaalliiddaaddeess oorriieennttaaddaass aa llaa rreedd 
– DDiissppoonnee ddee aabbuunnddaannttee ssooppoorrttee eenn llaa WWeebb
IInnttrroodduucccciióónn aa PPHHPP 
• RReeqquuiissiittooss 
– SSeerrvviiddoorr wweebb AAppaacchhee ((wwwwww..aappaacchhee..oorrgg)) 
– ccoonn eell mmóódduulloo PPHHPP ((wwwwww..pphhpp..nneett)) 
– yy llaa bbaassee ddee ddaattooss MMyySSQQLL ((wwwwww..mmyyssqqll..ccoomm)) ssii ssee ddeesseeaa 
ccrreeaarr ppáággiinnaass ddiinnáámmiiccaass 
• OOttrraass uuttiilliiddaaddeess 
– HHeerrrraammiieennttaass ppaarraa llaa ggeessttiióónn ddee MMyySSQQLL,, ccoommoo 
PPHHPPMMyyAAddmmiinn ((wwwwww..pphhppmmyyaaddmmiinn..nneett)) 
– EEddiittoorreess ddee PPHHPP,, ccoommoo DDeevvPPHHPP ((wwwwww..ssoouurrcceeffoorrggee..nneett)) oo 
EEcclliippssee ((wwwwww..eecclliippssee..oorrgg)) 
– MMaannuuaalleess ddee PPHHPP yy MMyySSQQLL
LLeenngguuaajjee PPHHPP bbáássiiccoo 
11.. SSiinnttaaxxiiss bbáássiiccaa 
22.. TTiippooss ddee ddaattooss 
33.. VVaarriiaabblleess 
44.. CCoonnssttaanntteess 
55.. EExxpprreessiioonneess yy ooppeerraaddoorreess 
66.. EEssttrruuccttuurraass ddee ccoonnttrrooll 
77.. FFuunncciioonneess 
88.. TTaabbllaass 
99.. BBiibblliiootteeccaass ddee ffuunncciioonneess
SSiinnttaaxxiiss bbáássiiccaa 
• PPHHPP eess sseennssiibbllee aa llaass mmaayyúússccuullaass 
• ¿CCóómmoo ssee iinnccrruussttaa eenn llaa ppáággiinnaa wweebb?? 
<<??PPHHPP ...... ??>> 
rreeccoommeennddaaddoo,, ssiieemmpprree ddiissppoonniibbllee 
<<??== eexxpprreessiióónn ??>> 
eeqquuiivvaallee aa <<?? eecchhoo eexxpprreessiióónn ??>> 
• LLaass iinnssttrruucccciioonneess ssee sseeppaarraann ccoonn uunn ;; ccoommoo eenn CC.. LLaa 
mmaarrccaa ffiinnaall ??>> iimmpplliiccaa uunn ;; 
• CCoommeennttaarriiooss:: ccoommoo eenn CC,, //** …… **// yy ////
SSiinnttaaxxiiss bbáássiiccaa 
• PPaarraa iimmpprriimmiirr:: eecchhoo yy pprriinntt 
eecchhoo:: mmuueessttrraa uunnaa oo mmááss ccaaddeennaass 
eecchhoo ccaaddeennaa11 [[,, ccaaddeennaa22……]];; //// nnoo eess uunnaa ffuunncciióónn 
eecchhoo ““HHoollaa mmuunnddoo””;; 
eecchhoo ““HHoollaa ““,, ““mmuunnddoo””;; 
pprriinntt:: mmuueessttrraa uunnaa ccaaddeennaa 
pprriinntt ccaaddeennaa;; //// nnoo eess uunnaa ffuunncciióónn 
pprriinntt ““HHoollaa mmuunnddoo””;; 
pprriinntt ““HHoollaa ““ .. ““mmuunnddoo””;;
SSiinnttaaxxiiss bbáássiiccaa 
• EEjjeemmpplloo:: 
<<HHTTMMLL>> 
<<HHEEAADD>> 
<<TTIITTLLEE>>MMii pprriimmeerr pprrooggrraammaa eenn PPHHPP<<//TTIITTLLEE>> 
<<//HHEEAADD>> 
<<BBOODDYY>> 
<<??PPHHPP 
pprriinntt ((““<<PP>>HHoollaa mmuunnddoo<<//PP>>””));; 
??>> 
<<//BBOODDYY>> 
<<//HHTTMMLL>>
SSiinnttaaxxiiss bbáássiiccaa 
• UUssoo ddee nn ppaarraa ggeenneerraarr ccóóddiiggoo HHTTMMLL lleeggiibbllee 
• aa)) SSiinn nn 
print (“<P>Párrafo 1</P>”); 
print (“<P>Párrafo 2</P>”); 
<P>Párrafo 1</P><P>Párrafo 2</P> 
Párrafo 1 
Párrafo 2 
Código PHP 
Código HTML 
Salida
SSiinnttaaxxiiss bbáássiiccaa 
• UUssoo ddee nn ppaarraa ggeenneerraarr ccóóddiiggoo HHTTMMLL lleeggiibbllee 
• bb)) CCoonn nn 
print (“<P>Párrafo 1</P>n”); 
print (“<P>Párrafo 2</P>n”); 
<P>Párrafo 1</P> 
<P>Párrafo 2</P> 
Párrafo 1 
Párrafo 2 
Código PHP 
Código HTML 
Salida
SSiinnttaaxxiiss bbáássiiccaa 
• IInncclluussiióónn ddee ffiicchheerrooss eexxtteerrnnooss:: 
– iinncclluuddee(()) 
– rreeqquuiirree(()) 
• AAmmbbooss iinncclluuyyeenn yy eevvaallúúaann eell ffiicchheerroo eessppeecciiffiiccaaddoo 
• DDiiffeerreenncciiaa:: eenn ccaassoo ddee eerrrroorr iinncclluuddee(()) pprroodduuccee uunn wwaarrnniinngg yy 
rreeqquuiirree(()) uunn eerrrroorr ffaattaall 
• SSee uussaarráá rreeqquuiirree(()) ssii aall pprroodduucciirrssee uunn eerrrroorr ddeebbee iinntteerrrruummppiirrssee llaa 
ccaarrggaa ddee llaa ppáággiinnaa 
• EEjjeemmpplloo::
SSiinnttaaxxiiss bbáássiiccaa 
<HTML> 
<HEAD> 
<TITLE>Título</TITLE> 
<?PHP 
// Incluir bibliotecas de funciones 
require ("conecta.php"); 
require ("fecha.php"); 
require ("cadena.php"); 
require ("globals.php"); 
?> 
</HEAD> 
<BODY> 
<?PHP 
include ("cabecera.html"); 
?> 
// Código HTML + PHP 
. . . 
<?PHP 
include ("pie.html"); 
?> 
</BODY> 
</HTML>
TTiippooss ddee ddaattooss 
• PPHHPP ssooppoorrttaa 88 ttiippooss ddee ddaattooss pprriimmiittiivvooss:: 
– TTiippooss eessccaallaarreess:: bboooolleeaann,, iinntteeggeerr,, ddoouubbllee,, ssttrriinngg 
– TTiippooss ccoommppuueessttooss:: aarrrraayy,, oobbjjeecctt 
– TTiippooss eessppeecciiaalleess:: rreessoouurrccee,, NNUULLLL 
• EEll ttiippoo ddee uunnaa vvaarriiaabbllee nnoo ssee ssuueellee eessppeecciiffiiccaarr.. SSee ddeecciiddee eenn 
ttiieemmppoo ddee eejjeeccuucciióónn eenn ffuunncciióónn ddeell ccoonntteexxttoo yy ppuueeddee vvaarriiaarr 
• FFuunncciioonneess ddee iinntteerrééss:: 
– LLaa ffuunncciióónn ggeettttyyppee(()) ddeevvuueellvvee eell ttiippoo ddee uunnaa vvaarriiaabbllee 
– LLaass ffuunncciioonneess iiss__ttyyppee ccoommpprruueebbaann ssii uunnaa vvaarriiaabbllee eess ddee uunn ttiippoo 
ddaaddoo:: 
iiss__aarrrraayy(()),, iiss__bbooooll(()),, iiss__ffllooaatt(()),, iiss__iinntteeggeerr(()),, iiss__nnuullll(()),, 
iiss__nnuummeerriicc(()),, iiss__oobbjjeecctt(()),, iiss__rreessoouurrccee(()),, iiss__ssccaallaarr(()),, 
iiss__ssttrriinngg(()) 
– LLaa ffuunncciióónn vvaarr__dduummpp(()) mmuueessttrraa eell ttiippoo yy eell vvaalloorr ddee uunnaa vvaarriiaabbllee.. 
EEss eessppeecciiaallmmeennttee iinntteerreessaannttee ccoonn llooss aarrrraayyss
TTiippooss ddee ddaattooss 
• TTiippoo iinntteeggeerr ((nnúúmmeerrooss eenntteerrooss)) 
– 2277,, --55,, 00 
• TTiippoo ddoouubbllee ((nnúúmmeerrooss rreeaalleess)) 
– 11..223344,, --55..3333 
• TTiippoo bboooolleeaann ((llóóggiiccoo)) 
– VVaalloorreess:: ttrruuee,, ffaallssee ((iinnsseennssiibblleess aa llaass mmaayyúússccuullaass)) 
– EEll 00 yy llaa ccaaddeennaa vvaaccííaa ttiieenneenn vvaalloorr ffaallssee
TTiippooss ddee ddaattooss 
• TTiippoo ssttrriinngg:: 
– LLaass ccaaddeennaass ssee eenncciieerrrraann eennttrree ccoommiillllaass ssiimmpplleess oo ddoobblleess:: 
• ‘‘ssiimmpplleess’’:: aaddmmiittee llooss ccaarraacctteerreess ddee eessccaappee ’’ ((ccoommiillllaa ssiimmppllee)) 
yy  ((bbaarrrraa)).. LLaass vvaarriiaabblleess NNOO ssee eexxppaannddeenn 
• ““ddoobblleess””:: aaddmmiittee mmááss ccaarraacctteerreess ddee eessccaappee,, ccoommoo nn,, rr,, tt,, ,, 
$$,, ””.. LLooss nnoommbbrreess ddee vvaarriiaabblleess SSÍÍ ssee eexxppaannddeenn 
• EEjjeemmppllooss:: 
$$aa == 99;; 
pprriinntt ‘‘aa vvaallee $$aann’’;; 
//// mmuueessttrraa aa vvaallee $$aann 
pprriinntt ““aa vvaallee $$aann””;; 
//// mmuueessttrraa aa vvaallee 99 yy aavvaannzzaa uunnaa llíínneeaa 
pprriinntt ““<<IIMMGG SSRRCC==‘‘llooggoo..ggiiff’’>>””;; 
//// mmuueessttrraa <<IIMMGG SSRRCC==‘‘llooggoo..ggiiff’’>> 
pprriinntt ““<<IIMMGG SSRRCC==””llooggoo..ggiiff””>>””;; 
//// mmuueessttrraa <<IIMMGG SSRRCC==““llooggoo..ggiiff””>> 
– AAcccceessoo aa uunn ccaarráácctteerr ddee llaa ccaaddeennaa:: 
• LLaa ffoorrmmaa eess $$iinniicciiaall == $$nnoommbbrree{{00}};;
VVaarriiaabblleess 
• LLaass vvaarriiaabblleess ssiieemmpprree vvaann pprreecceeddiiddaass ddee uunn $$ 
• EEll nnoommbbrree eess sseennssiibbllee aa llaass mmaayyúússccuullaass 
• CCoommiieennzzaann ppoorr lleettrraa oo ssuubbrraayyaaddoo,, sseegguuiiddoo ddee lleettrraass,, nnúúmmeerrooss oo 
ssuubbrraayyaaddoo 
• VVaarriiaabblleess pprreeddeeffiinniiddaass:: 
$$GGLLOOBBAALLSS,, $$__SSEERRVVEERR,, $$__GGEETT,, $$__PPOOSSTT,, $$__CCOOOOKKIIEESS,, $$__FFIILLEESS,, 
$$__EENNVV,, $$__RREEQQUUEESSTT,, $$__SSEESSSSIIOONN 
• ÁÁmmbbiittoo:: gglloobbaalleess aall ffiicchheerroo ((eexxcceeppttoo ffuunncciioonneess)) oo llooccaalleess aa uunnaa 
ffuunncciióónn 
• EEjjeemmpplloo:: 
$$vvaalloorr == 55;; 
pprriinntt ““EEll vvaalloorr eess:: ““ .. $$vvaalloorr .. ““nn””;; 
pprriinntt ““EEll vvaalloorr eess:: $$vvaalloorrnn””;; //// oojjoo:: ccoommiillllaass ddoobblleess 
RReessuullttaaddoo:: 
EEll vvaalloorr eess:: 55
VVaarriiaabblleess 
• VVaarriiaabblleess vvaarriiaabblleess 
– SSee ppuueeddeenn ccrreeaarr nnoommbbrreess ddee vvaarriiaabblleess ddiinnáámmiiccaammeennttee 
– LLaa vvaarriiaabbllee vvaarriiaabbllee ttoommaa ssuu nnoommbbrree ddeell vvaalloorr ddee oottrraa 
vvaarriiaabbllee pprreevviiaammeennttee ddeeccllaarraaddaa 
– EEjjeemmpplloo:: 
$$aa == ""hhoollaa"";; 
$$$$aa == ""mmuunnddoo"";; 
pprriinntt ""$$aa $$hhoollaann"";; 
pprriinntt ""$$aa $${{$$aa}}"";; 
RReessuullttaaddoo:: 
hhoollaa mmuunnddoo 
hhoollaa mmuunnddoo
VVaarriiaabblleess 
• EEjjeemmpplloo ddee vvaarriiaabblleess vvaarriiaabblleess:: ppáággiinnaa iinntteerrnnaacciioonnaalliizzaaddaa ((11)) 
<?PHP 
$mensaje_es="Hola"; 
$mensaje_en="Hello"; 
$idioma = "es"; 
$mensaje = "mensaje_" . $idioma; 
print $$mensaje; 
?>
VVaarriiaabblleess 
• EEjjeemmpplloo ddee vvaarriiaabblleess vvaarriiaabblleess:: ppáággiinnaa iinntteerrnnaacciioonnaalliizzaaddaa ((22)) 
<?PHP 
$mensaje_es="Hola"; 
$mensaje_en="Hello"; 
$idioma = "en"; 
$mensaje = "mensaje_" . $idioma; 
print $$mensaje; 
?>
CCoonnssttaanntteess 
• DDeeffiinniicciióónn ddee ccoonnssttaanntteess:: 
ddeeffiinnee ((““CCOONNSSTTAANNTTEE””,, ““hhoollaa””));; 
pprriinntt CCOONNSSTTAANNTTEE;; 
• NNoo lllleevvaann $$ ddeellaannttee 
• SSóólloo ssee ppuueeddeenn ddeeffiinniirr ccoonnssttaanntteess ddee llooss ttiippooss eessccaallaarreess ((bboooolleeaann,, 
iinntteeggeerr,, ddoouubbllee,, ssttrriinngg))
Expresiones yy ooppeerraaddoorreess 
• OOppeerraaddoorreess aarriittmmééttiiccooss:: 
++,, --,, **,, //,, %%,, ++++,, ---- 
• OOppeerraaddoorr ddee aassiiggnnaacciióónn:: 
== 
ooppeerraaddoorreess ccoommbbiinnaaddooss:: ..==,, ++==,, eettcc 
$$aa == 33;; $$aa ++== 55;;  aa vvaallee 88 
$$bb == ““hhoollaa ””;; $$bb ..== ““mmuunnddoo””;;  bb vvaallee ““hhoollaa mmuunnddoo”” 
 EEqquuiivvaallee aa $$bb == $$bb .. ““mmuunnddoo””;; 
• OOppeerraaddoorreess ddee ccoommppaarraacciióónn:: 
====,, !!==,, <<,, >>,, <<==,, >>== yy oottrrooss 
• OOppeerraaddoorr ddee ccoonnttrrooll ddee eerrrroorr:: @@.. AAnntteeppuueessttoo aa uunnaa eexxpprreessiióónn,, eevviittaa 
ccuuaallqquuiieerr mmeennssaajjee ddee eerrrroorr qquuee ppuueeddaa sseerr ggeenneerraaddoo ppoorr llaa eexxpprreessiióónn 
• OOppeerraaddoorreess llóóggiiccooss:: 
aanndd ((&&&&)),, oorr ((||||)),, !!,, xxoorr 
aanndd//&&&& yy oorr//|||| ttiieenneenn ddiiffeerreenntteess pprriioorriiddaaddeess 
• OOppeerraaddoorreess ddee ccaaddeennaa:: 
ccoonnccaatteennaacciióónn:: .. ((ppuunnttoo)) 
aassiiggnnaacciióónn ccoonn ccoonnccaatteennaacciióónn:: ..==
Expresiones yy ooppeerraaddoorreess 
• PPrreecceeddeenncciiaa ddee ooppeerraaddoorreess ((ddee mmaayyoorr aa mmeennoorr)):: 
++++,, ---- 
**,, //,, %% 
++,,-- 
<<,, <<==,, >>,, >>== 
====,, !!== 
&&&& 
|||| 
aanndd 
oorr
Estructuras ddee ccoonnttrrooll 
• EEssttrruuccttuurraass sseelleeccttiivvaass:: 
– iiff--eellssee 
– sswwiittcchh 
• EEssttrruuccttuurraass rreeppeettiittiivvaass:: 
– wwhhiillee 
– ffoorr 
– ffoorreeaacchh
Estructuras ddee ccoonnttrrooll 
• EEssttrruuccttuurraa sseelleeccttiivvaa if-else 
if (condición) 
sentencia 
if (condición1) 
sentencia 1 
else if (condición2) 
sentencia 2 
... 
else if (condición n) 
sentencia n 
else 
sentencia n+1 
if (condición) 
sentencia 1 
else 
sentencia 2 
• MMiissmmoo ccoommppoorrttaammiieennttoo qquuee eenn CC 
• LLaass sseenntteenncciiaass ccoommppuueessttaass ssee eenncciieerrrraann eennttrree llllaavveess 
• eellsseeiiff ppuueeddee iirr ttooddoo jjuunnttoo
Estructuras ddee ccoonnttrrooll 
• EEjjeemmpplloo ddee eessttrruuccttuurraa sseelleeccttiivvaa iiff--eellssee:: 
<<??PPHHPP 
iiff (($$sseexxoo ==== ‘‘MM’’)) 
$$ssaalluuddoo == ""BBiieennvveenniiddaa,, "";; 
eellssee 
$$ssaalluuddoo == ""BBiieennvveenniiddoo,, "";; 
$$ssaalluuddoo == $$ssaalluuddoo .. $$nnoommbbrree;; 
pprriinntt (($$ssaalluuddoo));; 
??>>
Estructuras ddee ccoonnttrrooll 
• EEssttrruuccttuurraa sseelleeccttiivvaa switch 
sswwiittcchh ((eexxpprreessiióónn)) 
{{ 
ccaassee vvaalloorr__11:: 
sseenntteenncciiaa 11 
bbrreeaakk;; 
ccaassee vvaalloorr__22:: 
sseenntteenncciiaa 22 
bbrreeaakk;; 
…… 
ccaassee vvaalloorr__nn:: 
sseenntteenncciiaa nn 
bbrreeaakk;; 
ddeeffaauulltt 
sseenntteenncciiaa nn++11 
}} 
• MMiissmmoo ccoommppoorrttaammiieennttoo qquuee eenn CC,, ssóólloo qquuee llaa eexxpprreessiióónn ddeell 
ccaassee ppuueeddee sseerr iinntteeggeerr,, ffllooaatt oo ssttrriinngg
Estructuras ddee ccoonnttrrooll 
• EEjjeemmpplloo ddee eessttrruuccttuurraa sseelleeccttiivvaa sswwiittcchh:: 
sswwiittcchh (($$eexxtteennssiioonn)) 
{{ 
ccaassee ((""PPDDF"")):: 
$$ttiippoo == ""DDooccuummeennttoo AAddoobbee PPDDF"";; 
bbrreeaakk;; 
ccaassee ((""TTXXTT"")):: 
$$ttiippoo == ""DDooccuummeennttoo ddee tteexxttoo"";; 
bbrreeaakk;; 
ccaassee ((""HHTTMMLL"")):: 
ccaassee ((""HHTTMM"")):: 
$$ttiippoo == ""DDooccuummeennttoo HHTTMMLL"";; 
bbrreeaakk;; 
ddeeffaauulltt:: 
$$ttiippoo == ""AArrcchhiivvoo "" .. $$eexxtteennssiioonn;; 
}} 
pprriinntt (($$ttiippoo));;
Estructuras ddee ccoonnttrrooll 
• EEssttrruuccttuurraa rreeppeettiittiivvaa while 
wwhhiillee ((ccoonnddiicciióónn)) 
sseenntteenncciiaa 
• MMiissmmoo ccoommppoorrttaammiieennttoo qquuee eenn CC
Estructuras ddee ccoonnttrrooll 
• EEjjeemmpplloo ddee eessttrruuccttuurraa rreeppeettiittiivvaa wwhhiillee:: 
<<??PPHHPP 
pprriinntt ((""<<UULL>>nn""));; 
$$ii==11;; 
wwhhiillee (($$ii <<== 55)) 
{{ 
pprriinntt ((""<<LLII>>EElleemmeennttoo $$ii<<//LLII>>nn""));; 
$$ii++++;; 
}} 
pprriinntt ((""<<//UULL>>nn""));; 
??>>
Estructuras ddee ccoonnttrrooll 
• EEssttrruuccttuurraa rreeppeettiittiivvaa for 
ffoorr ((iinniicciiaalliizzaacciióónn;; ccoonnddiicciióónn;; iinnccrreemmeennttoo)) 
sseenntteenncciiaa 
• MMiissmmoo ccoommppoorrttaammiieennttoo qquuee eenn CC
Estructuras ddee ccoonnttrrooll 
• EEjjeemmpplloo ddee eessttrruuccttuurraa rreeppeettiittiivvaa ffoorr:: 
<<??PPHHPP 
pprriinntt ((""<<UULL>>nn""));; 
ffoorr (($$ii==11;; $$ii<<==55;; $$ii++++)) 
pprriinntt ((""<<LLII>>EElleemmeennttoo $$ii<<//LLII>>nn""));; 
pprriinntt ((""<<//UULL>>nn""));; 
??>>
FFuunncciioonneess 
• EEjjeemmpplloo:: 
ffuunnccttiioonn ssuummaa (($$xx,, $$yy)) 
{{ 
$$ss == $$xx ++ $$yy;; 
rreettuurrnn $$ss;; 
}} 
$$aa==11;; 
$$bb==22;; 
$$cc==ssuummaa (($$aa,, $$bb));; 
pprriinntt $$cc;;
FFuunncciioonneess 
• PPoorr ddeeffeeccttoo llooss ppaarráámmeettrrooss ssee ppaassaann ppoorr vvaalloorr 
• PPaassoo ppoorr rreeffeerreenncciiaa:: 
ffuunnccttiioonn iinnccrreemmeennttaa ((&&$$aa)) 
{{ 
$$aa == $$aa ++ 11;; 
}} 
$$aa==11;; 
iinnccrreemmeennttaa (($$aa));; 
pprriinntt $$aa;; //// MMuueessttrraa uunn 22
FFuunncciioonneess 
• AArrgguummeennttooss ppoorr ddeeffeeccttoo 
ffuunnccttiioonn mmuueessttrraannoommbbrree (($$ttiittuulloo == ""SSrr.."")) 
{{ 
pprriinntt ""EEssttiimmaaddoo $$ttiittuulloo::nn"";; 
}} 
mmuueessttrraannoommbbrree (());; 
mmuueessttrraannoommbbrree ((""PPrrooff..""));; 
• SSaalliiddaa:: 
EEssttiimmaaddoo SSrr..:: 
EEssttiimmaaddoo PPrrooff..::
FFuunncciioonneess 
• LLooss aarrgguummeennttooss ccoonn vvaalloorreess ppoorr ddeeffeeccttoo ddeebbeenn sseerr 
ssiieemmpprree llooss úúllttiimmooss:: 
ffuunnccttiioonn mmuueessttrraannoommbbrree (($$nnoommbbrree,, $$ttiittuulloo== ""SSrr.."")) 
{{ 
pprriinntt ""EEssttiimmaaddoo $$ttiittuulloo $$nnoommbbrree::nn"";; 
}} 
mmuueessttrraannoommbbrree ((““FFeerrnnáánnddeezz””));; 
mmuueessttrraannoommbbrree ((““FFeerrnnáánnddeezz””,, ""PPrrooff..""));; 
• SSaalliiddaa:: 
EEssttiimmaaddoo SSrr.. FFeerrnnáánnddeezz:: 
EEssttiimmaaddoo PPrrooff.. FFeerrnnáánnddeezz::
AArrrraayyss == TTaabbllaa 
¿QQuuéé eess uunn aarrrraayy?? 
• UUnn aarrrraayy eess sseenncciillllaammeennttee uunnaa ttaabbllaa ddee vvaalloorreess.. 
• CCaaddaa uunnoo ddee llooss eelleemmeennttooss ddee eessaa ttaabbllaa ssee iiddeennttiiffiiccaa ppoorr mmeeddiioo ddee uunn nnoommbbrree 
((ccoommúúnn ppaarraa ttooddooss)) yy uunn íínnddiiccee ((qquuee ddiiffeerreenncciiaarrííaa aa ccaaddaa uunnoo ddee eellllooss)).. 
• LLaa ssiinnttaaxxiiss qquuee ppeerrmmiittee ddeeffiinniirr eelleemmeennttooss eenn uunn aarrrraayy eess llaa ssiigguuiieennttee:: 
$$nnoommbbrree[[iinnddiiccee]] 
EEll íínnddiiccee ppuueeddee sseerr uunn nnúúmmeerroo ((hhaabbrrííaa qquuee eessccrriibbiirrlloo ddeennttrroo ddeell ccoorrcchheettee ssiinn 
ccoommiillllaass)),, uunnaa ccaaddeennaa ((qquuee hhaabbrrííaa qquuee ppoonneerr eenn eell ccoorrcchheettee eenncceerrrraaddaa eennttrree 
ccoommiillllaass sseenncciillllaass ––''––)).. 
CCuuaannddoo llooss íínnddiicceess ddee uunn aarrrraayy ssoonn nnúúmmeerrooss ssee ddiiccee qquuee eess eessccaallaarr mmiieennttrraass 
qquuee ssii ffuueerraann ccaaddeennaass ssee llee llllaammaarrííaa aarrrraayy aassoocciiaattiivvoo..
Arrays UUnniiddiimmeennssiioonnaalleess 
AArrrraayyss EEssccaallaarreess 
• LLooss eelleemmeennttooss ddee uunn aarrrraayy eessccaallaarr ppuueeddee 
eessccrriibbiirrssee ccoonn uunnaa ddee eessttaass ssiinnttaaxxiiss:: 
$$aa[[]]==vvaalloorr óó $$aa[[xxxx]]==vvaalloorr 
• EEnn eell pprriimmeerroo ssee aassiiggnnaa llooss íínnddiicceess ddee 
ffoorrmmaa aauuttoommááttiiccaa,, ééssttee eess uunn vvaalloorr eenntteerroo 
yy eemmppiieezzaa ppoorr eell 00 ((CCEERROO)).. 
• EEnn eell sseegguunnddoo ddee llooss ccaassooss,, sseerreemmooss 
nnoossoottrrooss qquuiieenneess ppoonnggaammooss ((xxxx)) eell 
nnúúmmeerroo ccoorrrreessppoonnddiieennttee aall vvaalloorr ddeell 
íínnddiiccee.. 
AArrrraayyss AAssoocciiaattiivvoo 
• LLooss eelleemmeennttooss ddee uunn aarrrraayy aassoocciiaattiivvoo 
ppuueeddeenn eessccrriibbiirrssee uussaannddoo llaa ssiigguuiieennttee 
ssiinnttaaxxiiss:: 
$$aa[[''iinnddiiccee'']]==vvaalloorr 
• EEnn ééssttee ccaassoo eessttaammooss oobblliiggaaddooss aa eessccrriibbiirr 
eell nnoommbbrree ddeell íínnddiiccee qquuee hhaabbrráá ddee sseerr uunnaa 
ccaaddeennaa yy ddeebbee ppoonneerrssee eennttrree ccoommiillllaass.. 
• TTaannttoo eenn eessttee ssuuppuueessttoo ccoommoo eenn eell aanntteerriioorr,, 
eess ppoossiibbllee ––yy bbaassttaannttee ffrreeccuueennttee–– uuttiilliizzaarr 
ccoommoo íínnddiiccee eell ccoonntteenniiddoo ddee uunnaa vvaarriiaabbllee.. EEll 
mmooddoo ddee hhaacceerrlloo sseerrííaa:: 
$$aa[[$$iinndd]]==vvaalloorr 
• EEnn eessttee ccaassoo,, sseeaa ccuuaall ffuueerree eell vvaalloorr ddee llaa 
vvaarriiaabbllee $$iinndd,, eell nnoommbbrree ddee llaa vvaarriiaabbllee 
nnuunnccaa ssee ppoonnee eennttrree ccoommiillllaass..
Arrays UUnniiddiimmeennssiioonnaalleess 
<<<< EEssccaallaarreess yy AAssoocciiaattiivvooss >>>> 
$a[0]=“Domingo” $a[“Primero”]=“Domingo”
Arrays BBiiddiimmeennssiioonnaalleess 
AArrrraayyss EEssccaallaarreess 
• LLooss eelleemmeennttooss ddee uunn aarrrraayy bbiiddiimmeennssiioonnaall 
eessccaallaarr ppuueeddeenn eessccrriibbiirrssee uussaannddoo uunnaa ddee 
eessttaass ssiinnttaaxxiiss:: 
$$aa[[]][[]]==vvaalloorr óó $$aa[[xxxx]][[]]==vvaalloorr 
$$aa[[]][[xxxx]]==vvaalloorr óó $$aa[[xxxx]][[yyyy]]==vvaalloorr 
AArrrraayyss AAssoocciiaattiivvoo 
• LLooss eelleemmeennttooss ddee uunn aarrrraayy aassoocciiaattiivvoo ssee 
ppuueeddeenn eessccrriibbiirr uussaannddoo llaa ssiigguuiieennttee ssiinnttaaxxiiss:: 
$$aa[[""iinnddiiccee11"" ]][[""iinnddiiccee22"" ]]==vvaalloorr
LLaa ffuunncciióónn AArrrraayy 
$$aa== aarrrraayy ((íínnddiiccee 00 ==>> vvaalloorr ,, .......... ,, íínnddiiccee nn ==>> vvaalloorr ,,));; 
PPoorr eejjeemmpplloo:: 
$$zz==aarrrraayy (( 
00 ==>> 22,, 
11 ==>> ""PPeeppee"",, 
22 ==>> 3344..77,, 
33 ==>> ""3344AAmmbbrroossiioo"",, 
));; 
pprroodduucciirráá iigguuaall rreessuullttaaddoo qquuee:: 
$$zz[[00]]==22;; 
$$zz[[11]]==""PPeeppee"";; 
$$zz[[22]]==3344..77;; 
$$zz[[33]]==""3344AAmmbbrroossiioo"";;
LLaa ffuunncciióónn AArrrraayy 
• LLaa ffuunncciióónn aarrrraayy(()) ppeerrmmiittee eessccrriibbiirr aarrrraayyss 
ddee ccuuaallqquuiieerr ddiimmeennssiióónn uuttiilliizzaannddoo llaa ttééccnniiccaa 
ddee aanniiddaaddoo.. EEjjeemmpplloo ddee aarrrraayy eessccaallaarr:: 
$$zz[[00]][[00]]==3344;; 
$$zz[[00]][[11]]==3355;; 
$$zz[[00]][[22]]==3366;; 
$$zz[[11]][[00]]==113344;; 
$$zz[[11]][[11]]==113355;; 
$$zz[[11]][[22]]==113366;; 
ppooddrrííaammooss hhaacceerrlloo aassíí:: 
$$zz==aarrrraayy(( 00 ==>> aarrrraayy ((00 ==>> 3344,, 
11 ==>> 3355,, 
22 ==>> 3366,,)),, 
11 ==>> aarrrraayy ((00 ==>> 113344,, 
11 ==>> 113355,, 
22 ==>> 
113366,,)) 
));; 
• EEll aanniiddaaddoo ssuucceessiivvoo ppeerrmmiittiirrííaa ggeenneerraarr 
aarrrraayyss ddee ccuuaallqquuiieerr ddiimmeennssiióónn.. EEjjeemmpplloo ddee 
aarrrraayy aassoocciiaattiivvoo:: 
$$zz[[""aa""]][[""AA""]]==3344;; 
$$zz[[""aa""]][[""BB""]]==3355;; 
$$zz[[""aa""]][[""CC""]]==3366;; 
$$zz[[""bb""]][[""AA""]]==113344;; 
$$zz[[""bb""]][[""BB""]]==113355;; 
$$zz[[""bb""]][[""CC""]]==113366;; 
qquuee ppooddrrííaa ddeeffiinniirrssee ttaammbbiiéénn ddee eessttaa ffoorrmmaa:: 
$$zz==aarrrraayy((""aa"" ==>> aarrrraayy ((""AA"" ==>> 3344,, 
""BB"" ==>> 
3355,, 
""CC"" ==>> 
3366,, )),, 
""bb"" ==>> aarrrraayy ((""AA"" ==>> 
113344,, 
""BB"" ==>> 
113355,, 
""CC"" ==>> 
$$aa== aarrrraayy ((íínnddiiccee 00 ==>> vvaalloorr ,, .......... ,, íínnddiiccee nn ==>> vvaalloorr ,,));;
Bibliotecas ddee ffuunncciioonneess 
• EExxiisstteenn mmuucchhaass bbiibblliiootteeccaass ddee ffuunncciioonneess eenn PPHHPP 
• AAllgguunnooss eejjeemmppllooss:: 
– FFuunncciioonneess ddee mmaanniippuullaacciióónn ddee ccaaddeennaass 
– FFuunncciioonneess ddee ffeecchhaa yy hhoorraa 
– FFuunncciioonneess ddee aarrrraayyss 
– FFuunncciioonneess ddee ffiicchheerrooss 
– FFuunncciioonneess mmaatteemmááttiiccaass 
– FFuunncciioonneess ddee bbaasseess ddee ddaattooss 
– FFuunncciioonneess ddee rreedd 
• AAllgguunnaass bbiibblliiootteeccaass rreeqquuiieerreenn llaa iinnssttaallaacciióónn ddee ccoommppoonneenntteess 
aaddiicciioonnaalleess 
• TTooddaass llaass ffuunncciioonneess ddee bbiibblliiootteeccaa eessttáánn ccoommeennttaaddaass eenn llaa 
ddooccuummeennttaacciióónn ddee PPHHPP
Bibliotecas ddee ffuunncciioonneess 
• FFuunncciioonneess ddee mmaanniippuullaacciióónn ddee ccaaddeennaass 
– eexxppllooddee(()) 
• DDiivviiddee uunnaa ccaaddeennaa eenn ssuubbccaaddeennaass 
• aarrrraayy eexxppllooddee ((ssttrriinngg sseeppaarraattoorr,, ssttrriinngg ssttrriinngg [[,, iinntt lliimmiitt]])) 
– rrttrriimm(()),, llttrriimm(()),, ttrriimm(()) 
• EElliimmiinnaann ccaarraacctteerreess aa llaa ddeerreecchhaa,, aa llaa iizzqquuiieerrddaa oo ppoorr 
aammbbooss llaaddooss ddee uunnaa ccaaddeennaa 
• ssttrriinngg rrttrriimm (( ssttrriinngg ssttrr [[,, ssttrriinngg cchhaarrlliisstt]])) 
– ssttrrssttrr(()) 
• BBuussccaa llaa pprriimmeerraa ooccuurrrreenncciiaa ddee uunnaa ssuubbccaaddeennaa 
– ssttrrttoolloowweerr(()) // ssttrrttoouuppppeerr(()) 
• CCoonnvviieerrttee uunnaa ccaaddeennaa aa mmiinnúússccuullaa // mmaayyúússccuullaa 
– ssttrrccmmpp(()) // ssttrrccaasseeccmmpp(()) 
• CCoommppaarraa ddooss ccaaddeennaass ccoonn//ssiinn ddiissttiinncciióónn ddee mmaayyúússccuullaass 
– ssttrrlleenn(()) 
• CCaallccuullaa llaa lloonnggiittuudd ddee uunnaa ccaaddeennaa
Bibliotecas ddee ffuunncciioonneess 
• FFuunncciioonneess ddee ffeecchhaa yy hhoorraa 
– ddaattee(()) 
• FFoorrmmaatteeaa uunnaa ffeecchhaa sseeggúúnn uunn ffoorrmmaattoo ddaaddoo 
• EEjjeemmpplloo:: 
$$ffeecchhaa == ddaattee ((""jj//nn//YY HH::ii""));; 
pprriinntt ((""$$ffeecchhaa""));; 
RReessuullttaaddoo:: 
2266//99//22000055 1177::3366 
– ssttrrttoottiimmee(()) 
• CCoonnvviieerrttee uunnaa ffeecchhaa eenn uunn ttiimmeessttaammpp ddee UUNNIIXX 
• EEjjeemmpplloo:: 
$$ffeecchhaa == ddaattee ((""jj//nn//YY"",, ssttrrttoottiimmee((““55 aapprriill 22000011""))));; 
pprriinntt ((""$$ffeecchhaa""));; 
RReessuullttaaddoo:: 
55//44//22000011
Bibliotecas ddee ffuunncciioonneess 
• FFuunncciioonneess ddee aarrrraayyss 
– aarrrraayy__ccoouunntt__vvaalluueess(()) 
• CCaallccuullaa llaa ffrreeccuueenncciiaa ddee ccaaddaa uunnoo ddee llooss eelleemmeennttooss ddee uunn aarrrraayy 
– aarrrraayy__sseeaarrcchh(()) 
• BBuussccaa uunn eelleemmeennttoo eenn uunn aarrrraayy 
– ccoouunntt(()) 
• CCuueennttaa llooss eelleemmeennttooss ddee uunn aarrrraayy 
– ssoorrtt(()),, rrssoorrtt(()) 
• OOrrddeennaa yy rreeiinnddeexxaa uunn aarrrraayy ((rr==ddeeccrreecciieennttee)) 
– kkssoorrtt(()),, kkrrssoorrtt(()) 
• OOrrddeennaa ppoorr ccllaavveess uunn aarrrraayy ((rr==ddeeccrreecciieennttee))
FFoorrmmuullaarriiooss 
11..AAcccceessoo aa ffoorrmmuullaarriiooss HHTTMMLL ddeessddee PPHHPP 
22..EEll ffoorrmmuullaarriioo ddee PPHHPP 
33..SSuubbiiddaa ddee ffiicchheerrooss aall sseerrvviiddoorr 
44..VVaalliiddaacciióónn ddee llooss ddaattooss ddee uunn ffoorrmmuullaarriioo
Acceso a formularios ddeessddee PPHHPP 
• DDeessddee PPHHPP ssee ppuueeddee aacccceeddeerr ffáácciillmmeennttee aa llooss ddaattooss 
iinnttrroodduucciiddooss ddeessddee uunn ffoorrmmuullaarriioo HHTTMMLL 
• VVeeáámmoosslloo ccoonn uunn eejjeemmpplloo ssiimmppllee
Acceso a formularios ddeessddee PPHHPP 
• FFiicchheerroo uunnoo..pphhpp 
<<HHTTMMLL>> 
<<BBOODDYY>> 
<<FFOORRMM AACCTTIIOONN==””ddooss..pphhpp”” MMEETTHHOODD==””PPOOSSTT””>> 
EEddaadd:: <<IINNPPUUTT TTYYPPEE==””tteexxtt”” NNAAMMEE==””eeddaadd””>> 
<<IINNPPUUTT TTYYPPEE==””ssuubbmmiitt”” VVAALLUUEE==””aacceeppttaarr””>> 
<<//FFOORRMM>> 
<<//BBOODDYY>> 
<<//HHTTMMLL>> 
• FFiicchheerroo ddooss..pphhpp 
<<HHTTMMLL>> 
<<BBOODDYY>> 
<<??PPHHPP 
pprriinntt ((““LLaa eeddaadd eess:: $$eeddaadd””));; 
??>> 
<<//BBOODDYY>> 
<<//HHTTMMLL>>
Acceso a formularios ddeessddee PPHHPP
Acceso a formularios ddeessddee PPHHPP 
• A partir de PHP 4.2.0, el valor por defecto de la directiva de PHP 
register_globals es off 
• Esto tiene una gran importancia sobre los formularios, ya que no 
es posible acceder a las variables enviadas de la manera 
anterior (como variables globales). En su lugar hay que utilizar la 
variable predefinida de PHP $_POST, escribiendo 
$_POST[‘edad’] en lugar de $edad 
• Se puede poner register_globals = on en el fichero de 
configuración php.ini, pero no es recomendable por motivos de 
seguridad. Una alternativa que permite hacer mínimos cambios 
en el código ya existente es la siguiente: 
$edad = $_POST[‘edad’];
Acceso a formularios ddeessddee PPHHPP 
• Fichero uno.php 
<HTML> 
<BODY> 
<FORM ACTION=”dos.php” METHOD=”POST”> 
Edad: <INPUT TYPE=”text” NAME=”edad”> 
<INPUT TYPE=”submit” VALUE=”aceptar”> 
</FORM> 
</BODY> 
</HTML> 
• Fichero dos.php 
<HTML> 
<BODY> 
<?PHP 
$edad = $_POST[‘edad’]; 
print (“La edad es: $edad”); 
?> 
</BODY> 
</HTML>
Acceso a formularios ddeessddee PPHHPP 
• AAcccceessoo aa llooss ddiiffeerreenntteess ttiippooss ddee eelleemmeennttooss ddee 
eennttrraaddaa ddee ffoorrmmuullaarriioo 
– EElleemmeennttooss ddee ttiippoo IINNPPUUTT 
• TTEEXXTT 
• RRAADDIIOO 
• CCHHEECCKKBBOOXX 
• BBUUTTTTOONN 
• FFIILLEE 
• HHIIDDDDEENN 
• PPAASSSSWWOORRDD 
• SSUUBBMMIITT 
– EElleemmeennttoo SSEELLEECCTT 
• SSiimmppllee // mmúúllttiippllee 
– EElleemmeennttoo TTEEXXTTAARREEAA
Acceso a formularios ddeessddee PPHHPP 
• TTEEXXTT 
Introduzca la cadena a buscar: 
<INPUT TYPE="text" NAME="cadena" VALUE="valor por defecto" 
SIZE="20"> 
<?PHP 
$cadena = $_POST[‘cadena’]; 
print ($cadena); 
?>
Acceso a formularios ddeessddee PPHHPP 
• RRAADDIIOO 
Sexo: 
<INPUT TYPE="radio" NAME=“sexo" VALUE=“M“ CHECKED>Mujer 
<INPUT TYPE="radio" NAME=“sexo" VALUE=“H">Hombre 
<?PHP 
$sexo = $_POST[‘sexo’]; 
print ($sexo); 
?>
Acceso a formularios ddeessddee PPHHPP 
• CCHHEECCKKBBOOXX 
<INPUT TYPE="checkbox" NAME="extras[]" VALUE="garaje" 
CHECKED>Garaje 
<INPUT TYPE="checkbox" NAME="extras[]" VALUE="piscina">Piscina 
<INPUT TYPE="checkbox" NAME="extras[]" VALUE="jardin">Jardín 
<?PHP 
$extras = $_POST[‘extras’]; 
$n = count ($extras); 
for ($i=0; $i<$n; $i++) 
print (“$extras[$i]<BR>n”); 
//foreach ($extras as $extra) 
//print (“$extra<BR>n”); 
?>
Acceso a formularios ddeessddee PPHHPP 
• BBUUTTTTOONN 
<INPUT TYPE="button" NAME=“actualizar" 
VALUE="Actualizar datos"> 
<?PHP 
$actualizar = $_POST[‘actualizar’]; 
if ($actualizar) 
print ("Se han actualizado los datos"); 
?>
Acceso a formularios ddeessddee PPHHPP 
• FFIILLEE 
<FORM ACTION="procesa.php" METHOD="post“ 
ENCTYPE="multipart/form-data"> 
<INPUT TYPE="file" NAME="fichero"> 
</FORM>
Acceso a formularios ddeessddee PPHHPP 
• HHIIDDDDEENN 
<?PHP 
print(“<INPUT TYPE=’hidden’ NAME=’username’ 
VALUE=’$usuario’>n”); 
?> 
<?PHP 
$username = $_POST[‘username’]; 
print ($username); 
?>
Acceso a formularios ddeessddee PPHHPP 
• PPAASSSSWWOORRDD 
Contraseña: <INPUT TYPE="password" NAME="clave"> 
<?PHP 
$clave = $_POST[‘clave’]; 
print ($clave); 
?>
Acceso a formularios ddeessddee PPHHPP 
• SSUUBBMMIITT 
<INPUT TYPE="submit" NAME="enviar" VALUE="Enviar datos"> 
<?PHP 
$enviar = $_POST[‘enviar’]; 
if ($enviar) 
print ("Se ha pulsado el botón de enviar"); 
?>
Acceso a formularios ddeessddee PPHHPP 
• SSEELLEECCTT ssiimmppllee 
Color: 
<SELECT NAME=“color"> 
<OPTION VALUE=“rojo" SELECTED>Rojo 
<OPTION VALUE=“verde">Verde 
<OPTION VALUE=“azul">Azul 
</SELECT> 
<?PHP 
$color = $_POST[‘color’]; 
print ($color); 
?>
Acceso a formularios ddeessddee PPHHPP 
• SSEELLEECCTT mmúúllttiippllee 
Idiomas: 
<SELECT MULTIPLE SIZE="3" NAME="idiomas[]"> 
<OPTION VALUE="ingles" SELECTED>Inglés 
<OPTION VALUE="frances">Francés 
<OPTION VALUE="aleman">Alemán 
<OPTION VALUE="holandes">Holandés 
</SELECT> 
<?PHP 
$idiomas = $_POST[‘idiomas’]; 
$n = count ($idiomas); 
for ($i=0; $i<$n; $i++) 
print (“$idiomas[$i]<BR>n”); 
//foreach ($idiomas as $idioma) 
//print (“$idioma<BR>n”); 
?>
Acceso a formularios ddeessddee PPHHPP 
• TTEEXXTTAARREEAA 
Comentario: 
<TEXTAREA COLS=“50" ROWS=“4" NAME="comentario"> 
Este libro me parece ... 
</TEXTAREA> 
<?PHP 
$comentario = $_POST[‘comentario’]; 
print ($comentario); 
?>
EEll ffoorrmmuullaarriioo ddee PPHHPP 
• LLaa ffoorrmmaa hhaabbiittuuaall ddee ttrraabbaajjaarr ccoonn ffoorrmmuullaarriiooss eenn PPHHPP eess uuttiilliizzaarr uunn 
úúnniiccoo pprrooggrraammaa qquuee pprroocceessee eell ffoorrmmuullaarriioo oo lloo mmuueessttrree sseeggúúnn 
hhaayyaa ssiiddoo oo nnoo eennvviiaaddoo,, rreessppeeccttiivvaammeennttee 
• VVeennttaajjaass:: 
– DDiissmmiinnuuyyee eell nnúúmmeerroo ddee ffiicchheerrooss 
– PPeerrmmiittee vvaalliiddaarr llooss ddaattooss ddeell ffoorrmmuullaarriioo eenn eell pprrooppiioo ffoorrmmuullaarriioo 
• PPrroocceeddiimmiieennttoo:: 
ssii ssee hhaa eennvviiaaddoo eell ffoorrmmuullaarriioo:: 
PPrroocceessaarr ffoorrmmuullaarriioo 
ssii nnoo:: 
MMoossttrraarr ffoorrmmuullaarriioo 
ffssii
EEll ffoorrmmuullaarriioo ddee PPHHPP 
• EEssqquueemmaa ddee ffuunncciioonnaammiieennttoo:: 
si se ha enviado el formulario: 
Procesar formulario 
si no: 
Mostrar formulario 
fsi 
a) b) 
– LLaa 11ª vveezz qquuee ssee ccaarrggaa llaa ppáággiinnaa ssee mmuueessttrraa eell ffoorrmmuullaarriioo ((aa)) 
– LLaa 22ª vveezz ssee pprroocceessaa eell ffoorrmmuullaarriioo ((bb))
EEll ffoorrmmuullaarriioo ddee PPHHPP 
• PPaarraa ssaabbeerr ssii ssee hhaa eennvviiaaddoo eell ffoorrmmuullaarriioo ssee aaccuuddee aa llaa vvaarriiaabbllee 
ccoorrrreessppoonnddiieennttee aall bboottóónn ddee eennvvííoo.. SSii eessttee bboottóónn aappaarreeccee ddee llaa 
ssiigguuiieennttee ffoorrmmaa eenn eell ffoorrmmuullaarriioo HHTTMMLL:: 
<<IINNPPUUTT TTYYPPEE==""SSUUBBMMIITT"" NNAAMMEE==""eennvviiaarr““ VVAALLUUEE==""pprroocceessaarr"">> 
eennttoonncceess llaa ccoonnddiicciióónn aanntteerriioorr ssee ttrraannssffoorrmmaa eenn:: 
iiff ((iisssseett(($$eennvviiaarr)))) 
oo bbiieenn 
iiff (($$eennvviiaarr ==== ““pprroocceessaarr””))

Mais conteúdo relacionado

Mais procurados

Former Chapter 3
Former Chapter 3 Former Chapter 3
Former Chapter 3 Lizz Renee
 
Kelas X : Bab II Sistem hukum dan peradilan nasional
Kelas X : Bab II Sistem hukum dan peradilan nasionalKelas X : Bab II Sistem hukum dan peradilan nasional
Kelas X : Bab II Sistem hukum dan peradilan nasionalNovii Kanadia
 
Persentase sistem-reproduksi-pada-wanita2
Persentase sistem-reproduksi-pada-wanita2Persentase sistem-reproduksi-pada-wanita2
Persentase sistem-reproduksi-pada-wanita2ayikputri1
 
KELAS X SMA BAB II SISTEM HUKUM DAN PERADILAN NASIONAL
KELAS X SMA BAB II SISTEM HUKUM DAN PERADILAN NASIONALKELAS X SMA BAB II SISTEM HUKUM DAN PERADILAN NASIONAL
KELAS X SMA BAB II SISTEM HUKUM DAN PERADILAN NASIONALUniversitas PGRI Yogyakarta
 
2. análisis del discurso reflexiones y relaciones preliminares
2. análisis del discurso reflexiones y relaciones preliminares2. análisis del discurso reflexiones y relaciones preliminares
2. análisis del discurso reflexiones y relaciones preliminaresCeci Lopez
 
Pharmacology of local anesthetics
Pharmacology of local anestheticsPharmacology of local anesthetics
Pharmacology of local anestheticsvasanramkumar
 
miracles behind reading (Mengapa Harus Membaca?)
miracles behind reading (Mengapa Harus Membaca?)miracles behind reading (Mengapa Harus Membaca?)
miracles behind reading (Mengapa Harus Membaca?)Nur Arfah Mega
 
Barangay future search conference by Rey Halili
Barangay future search conference by Rey Halili Barangay future search conference by Rey Halili
Barangay future search conference by Rey Halili Reynaldo Halili
 
Growth and development_of_children.ppt_aaaaa
Growth and development_of_children.ppt_aaaaaGrowth and development_of_children.ppt_aaaaa
Growth and development_of_children.ppt_aaaaaShirley Valera
 
[Slideshare] tadzkirah-september -2014(d)-lesson-for-believers-(al-kahfi-18-5...
[Slideshare] tadzkirah-september -2014(d)-lesson-for-believers-(al-kahfi-18-5...[Slideshare] tadzkirah-september -2014(d)-lesson-for-believers-(al-kahfi-18-5...
[Slideshare] tadzkirah-september -2014(d)-lesson-for-believers-(al-kahfi-18-5...Zhulkeflee Ismail
 
Taking epilepsy to school.7.10.2014
Taking epilepsy to school.7.10.2014Taking epilepsy to school.7.10.2014
Taking epilepsy to school.7.10.2014Cleveland Clinic
 
Lambi Village — This is how you help Haitians
Lambi Village — This is how you help HaitiansLambi Village — This is how you help Haitians
Lambi Village — This is how you help HaitiansChris Johnson
 
Effective communication
Effective communicationEffective communication
Effective communicationtanuja nair
 
FISIKA TANAH
FISIKA TANAHFISIKA TANAH
FISIKA TANAHEDIS BLOG
 

Mais procurados (20)

Former Chapter 3
Former Chapter 3 Former Chapter 3
Former Chapter 3
 
A true woman 5
A true woman   5A true woman   5
A true woman 5
 
True love 6
True love   6True love   6
True love 6
 
Kelas X : Bab II Sistem hukum dan peradilan nasional
Kelas X : Bab II Sistem hukum dan peradilan nasionalKelas X : Bab II Sistem hukum dan peradilan nasional
Kelas X : Bab II Sistem hukum dan peradilan nasional
 
Persentase sistem-reproduksi-pada-wanita2
Persentase sistem-reproduksi-pada-wanita2Persentase sistem-reproduksi-pada-wanita2
Persentase sistem-reproduksi-pada-wanita2
 
KELAS X SMA BAB II SISTEM HUKUM DAN PERADILAN NASIONAL
KELAS X SMA BAB II SISTEM HUKUM DAN PERADILAN NASIONALKELAS X SMA BAB II SISTEM HUKUM DAN PERADILAN NASIONAL
KELAS X SMA BAB II SISTEM HUKUM DAN PERADILAN NASIONAL
 
Melhorando as dinâmicas pr george
Melhorando as dinâmicas pr georgeMelhorando as dinâmicas pr george
Melhorando as dinâmicas pr george
 
2. análisis del discurso reflexiones y relaciones preliminares
2. análisis del discurso reflexiones y relaciones preliminares2. análisis del discurso reflexiones y relaciones preliminares
2. análisis del discurso reflexiones y relaciones preliminares
 
Pharmacology of local anesthetics
Pharmacology of local anestheticsPharmacology of local anesthetics
Pharmacology of local anesthetics
 
Power de andamios 1
Power de andamios 1Power de andamios 1
Power de andamios 1
 
Jesus in islam
Jesus in islamJesus in islam
Jesus in islam
 
miracles behind reading (Mengapa Harus Membaca?)
miracles behind reading (Mengapa Harus Membaca?)miracles behind reading (Mengapa Harus Membaca?)
miracles behind reading (Mengapa Harus Membaca?)
 
Barangay future search conference by Rey Halili
Barangay future search conference by Rey Halili Barangay future search conference by Rey Halili
Barangay future search conference by Rey Halili
 
Growth and development_of_children.ppt_aaaaa
Growth and development_of_children.ppt_aaaaaGrowth and development_of_children.ppt_aaaaa
Growth and development_of_children.ppt_aaaaa
 
[Slideshare] tadzkirah-september -2014(d)-lesson-for-believers-(al-kahfi-18-5...
[Slideshare] tadzkirah-september -2014(d)-lesson-for-believers-(al-kahfi-18-5...[Slideshare] tadzkirah-september -2014(d)-lesson-for-believers-(al-kahfi-18-5...
[Slideshare] tadzkirah-september -2014(d)-lesson-for-believers-(al-kahfi-18-5...
 
Taking epilepsy to school.7.10.2014
Taking epilepsy to school.7.10.2014Taking epilepsy to school.7.10.2014
Taking epilepsy to school.7.10.2014
 
Lambi Village — This is how you help Haitians
Lambi Village — This is how you help HaitiansLambi Village — This is how you help Haitians
Lambi Village — This is how you help Haitians
 
Respiratorni sistem
Respiratorni sistem Respiratorni sistem
Respiratorni sistem
 
Effective communication
Effective communicationEffective communication
Effective communication
 
FISIKA TANAH
FISIKA TANAHFISIKA TANAH
FISIKA TANAH
 

Destaque

jayshyam123
jayshyam123jayshyam123
jayshyam123jayshyam
 
A Survey On Different Methods Of Edge Detection
A Survey On Different Methods Of Edge DetectionA Survey On Different Methods Of Edge Detection
A Survey On Different Methods Of Edge DetectionEditorJST
 
Práctica 5. Movimiento Rectilíneo Uniformemente Variado.
Práctica 5. Movimiento Rectilíneo Uniformemente Variado.Práctica 5. Movimiento Rectilíneo Uniformemente Variado.
Práctica 5. Movimiento Rectilíneo Uniformemente Variado.Alisson Fuentes
 
Tecnología educativa
Tecnología educativaTecnología educativa
Tecnología educativaEli Viera
 
Regla jurisprudencia ii est
Regla jurisprudencia ii estRegla jurisprudencia ii est
Regla jurisprudencia ii estICDT
 
Que son las tics
Que son las ticsQue son las tics
Que son las ticsLiiz Hdz
 
безпечний інтернет
безпечний інтернетбезпечний інтернет
безпечний інтернетoksanaoliynuk
 
instalacion de plugins sublime text
instalacion de plugins sublime textinstalacion de plugins sublime text
instalacion de plugins sublime textPablo Mamani
 
Uso de la tecnologia en la comunicacion
Uso de la tecnologia en la comunicacionUso de la tecnologia en la comunicacion
Uso de la tecnologia en la comunicacionGene1818
 
ชื่อนางสาวรัตนาวดี   ติมุลา   รหัสนิสิต 59670107   กลุ่ม 3301
ชื่อนางสาวรัตนาวดี   ติมุลา   รหัสนิสิต 59670107   กลุ่ม 3301ชื่อนางสาวรัตนาวดี   ติมุลา   รหัสนิสิต 59670107   กลุ่ม 3301
ชื่อนางสาวรัตนาวดี   ติมุลา   รหัสนิสิต 59670107   กลุ่ม 3301Oraya Krodkrua
 
Evualacion ilovepdf-compressed
Evualacion ilovepdf-compressedEvualacion ilovepdf-compressed
Evualacion ilovepdf-compressedIsabel Villegas
 

Destaque (18)

jayshyam123
jayshyam123jayshyam123
jayshyam123
 
A Survey On Different Methods Of Edge Detection
A Survey On Different Methods Of Edge DetectionA Survey On Different Methods Of Edge Detection
A Survey On Different Methods Of Edge Detection
 
Guillermo Ibarra Prado
Guillermo Ibarra PradoGuillermo Ibarra Prado
Guillermo Ibarra Prado
 
Práctica 5. Movimiento Rectilíneo Uniformemente Variado.
Práctica 5. Movimiento Rectilíneo Uniformemente Variado.Práctica 5. Movimiento Rectilíneo Uniformemente Variado.
Práctica 5. Movimiento Rectilíneo Uniformemente Variado.
 
Tecnología educativa
Tecnología educativaTecnología educativa
Tecnología educativa
 
Regla jurisprudencia ii est
Regla jurisprudencia ii estRegla jurisprudencia ii est
Regla jurisprudencia ii est
 
Que son las tics
Que son las ticsQue son las tics
Que son las tics
 
безпечний інтернет
безпечний інтернетбезпечний інтернет
безпечний інтернет
 
Mesoamerica
MesoamericaMesoamerica
Mesoamerica
 
instalacion de plugins sublime text
instalacion de plugins sublime textinstalacion de plugins sublime text
instalacion de plugins sublime text
 
Métodos
 Métodos Métodos
Métodos
 
CV-Nader-1.
CV-Nader-1.CV-Nader-1.
CV-Nader-1.
 
Uso.d.tec.edu.pp
Uso.d.tec.edu.ppUso.d.tec.edu.pp
Uso.d.tec.edu.pp
 
delito
delitodelito
delito
 
Uso de la tecnologia en la comunicacion
Uso de la tecnologia en la comunicacionUso de la tecnologia en la comunicacion
Uso de la tecnologia en la comunicacion
 
ชื่อนางสาวรัตนาวดี   ติมุลา   รหัสนิสิต 59670107   กลุ่ม 3301
ชื่อนางสาวรัตนาวดี   ติมุลา   รหัสนิสิต 59670107   กลุ่ม 3301ชื่อนางสาวรัตนาวดี   ติมุลา   รหัสนิสิต 59670107   กลุ่ม 3301
ชื่อนางสาวรัตนาวดี   ติมุลา   รหัสนิสิต 59670107   กลุ่ม 3301
 
Los 04 proyectos
Los 04 proyectosLos 04 proyectos
Los 04 proyectos
 
Evualacion ilovepdf-compressed
Evualacion ilovepdf-compressedEvualacion ilovepdf-compressed
Evualacion ilovepdf-compressed
 

Semelhante a introduccion basica php

Maurizio Elia. I problemi psichiatrici in età adulta.
Maurizio Elia. I problemi psichiatrici in età adulta.Maurizio Elia. I problemi psichiatrici in età adulta.
Maurizio Elia. I problemi psichiatrici in età adulta.claudiopagano
 
Convention cnudci - responsabilité des exploitants de terminaux
Convention   cnudci - responsabilité des exploitants de terminauxConvention   cnudci - responsabilité des exploitants de terminaux
Convention cnudci - responsabilité des exploitants de terminauxRabah HELAL
 
Aqua Eagles Presentation August 25th 2014
Aqua Eagles Presentation August 25th 2014 Aqua Eagles Presentation August 25th 2014
Aqua Eagles Presentation August 25th 2014 amandaleaallen
 
Creating the Startup The Accounting Panorama
Creating the Startup The Accounting PanoramaCreating the Startup The Accounting Panorama
Creating the Startup The Accounting PanoramaSteve Lines
 
Amirican litrature Nathaniel hawthorne
Amirican litrature Nathaniel hawthorneAmirican litrature Nathaniel hawthorne
Amirican litrature Nathaniel hawthorneAbdul Ali Aloko
 
Reanimacion enfoque cti
Reanimacion enfoque ctiReanimacion enfoque cti
Reanimacion enfoque ctiJorge Ortiz
 
Radio communication resum
  Radio   communication resum  Radio   communication resum
Radio communication resumRabah HELAL
 
Introduction to parts of speech tagging
Introduction to parts of speech taggingIntroduction to parts of speech tagging
Introduction to parts of speech taggingazra01
 
kelas Xi : Bab iv hubungan internasional
kelas Xi : Bab iv hubungan internasionalkelas Xi : Bab iv hubungan internasional
kelas Xi : Bab iv hubungan internasionalNovii Kanadia
 
Bab iv hubungan internasional
Bab iv hubungan internasionalBab iv hubungan internasional
Bab iv hubungan internasionalwowwwwwiii
 
21 High-quality programming code construction part-ii
21 High-quality programming code construction part-ii21 High-quality programming code construction part-ii
21 High-quality programming code construction part-iimaznabili
 
business plan presentation
business plan presentationbusiness plan presentation
business plan presentationHotRat
 
Business plan presentation_format
Business plan presentation_formatBusiness plan presentation_format
Business plan presentation_formatbindur87
 

Semelhante a introduccion basica php (20)

Maurizio Elia. I problemi psichiatrici in età adulta.
Maurizio Elia. I problemi psichiatrici in età adulta.Maurizio Elia. I problemi psichiatrici in età adulta.
Maurizio Elia. I problemi psichiatrici in età adulta.
 
Ageing male
Ageing maleAgeing male
Ageing male
 
Biochemistry 1
Biochemistry 1Biochemistry 1
Biochemistry 1
 
Spinal injuries
Spinal injuriesSpinal injuries
Spinal injuries
 
Convention cnudci - responsabilité des exploitants de terminaux
Convention   cnudci - responsabilité des exploitants de terminauxConvention   cnudci - responsabilité des exploitants de terminaux
Convention cnudci - responsabilité des exploitants de terminaux
 
Aqua Eagles Presentation August 25th 2014
Aqua Eagles Presentation August 25th 2014 Aqua Eagles Presentation August 25th 2014
Aqua Eagles Presentation August 25th 2014
 
Chapter 9
Chapter 9Chapter 9
Chapter 9
 
Socratic method
Socratic methodSocratic method
Socratic method
 
Creating the Startup The Accounting Panorama
Creating the Startup The Accounting PanoramaCreating the Startup The Accounting Panorama
Creating the Startup The Accounting Panorama
 
Leukoplakia
LeukoplakiaLeukoplakia
Leukoplakia
 
Amirican litrature Nathaniel hawthorne
Amirican litrature Nathaniel hawthorneAmirican litrature Nathaniel hawthorne
Amirican litrature Nathaniel hawthorne
 
Reanimacion enfoque cti
Reanimacion enfoque ctiReanimacion enfoque cti
Reanimacion enfoque cti
 
Radio communication resum
  Radio   communication resum  Radio   communication resum
Radio communication resum
 
Job resources final revision
Job resources final revisionJob resources final revision
Job resources final revision
 
Introduction to parts of speech tagging
Introduction to parts of speech taggingIntroduction to parts of speech tagging
Introduction to parts of speech tagging
 
kelas Xi : Bab iv hubungan internasional
kelas Xi : Bab iv hubungan internasionalkelas Xi : Bab iv hubungan internasional
kelas Xi : Bab iv hubungan internasional
 
Bab iv hubungan internasional
Bab iv hubungan internasionalBab iv hubungan internasional
Bab iv hubungan internasional
 
21 High-quality programming code construction part-ii
21 High-quality programming code construction part-ii21 High-quality programming code construction part-ii
21 High-quality programming code construction part-ii
 
business plan presentation
business plan presentationbusiness plan presentation
business plan presentation
 
Business plan presentation_format
Business plan presentation_formatBusiness plan presentation_format
Business plan presentation_format
 

Mais de Pablo Mamani

Mais de Pablo Mamani (11)

NeoBook
NeoBookNeoBook
NeoBook
 
gestio de paquetes linux
gestio de paquetes linuxgestio de paquetes linux
gestio de paquetes linux
 
crear nuevo usuario
crear nuevo usuariocrear nuevo usuario
crear nuevo usuario
 
Administrador de paquetes
Administrador de paquetesAdministrador de paquetes
Administrador de paquetes
 
Instalacion mysql debian
Instalacion mysql debianInstalacion mysql debian
Instalacion mysql debian
 
instalar php en debian
instalar php en debianinstalar php en debian
instalar php en debian
 
instalar apache
instalar apacheinstalar apache
instalar apache
 
Intro css3
Intro css3Intro css3
Intro css3
 
Intro html5
Intro html5Intro html5
Intro html5
 
FOOD AND DRINK
FOOD AND DRINKFOOD AND DRINK
FOOD AND DRINK
 
Solicitud de certificado
Solicitud de certificadoSolicitud de certificado
Solicitud de certificado
 

introduccion basica php

  • 1. “Introducción a PHP" Pablo Mamani
  • 2. IInnttrroodduucccciióónn aa PPHHPP • LLeenngguuaajjeess ddee ssccrriipptt – PPHHPP eess uunn lleenngguuaajjee ddee ssccrriipptt ddeell llaaddoo ddeell sseerrvviiddoorr.. OOttrrooss lleenngguuaajjeess ssiimmiillaarreess ssoonn AASSPP,, JJSSPP oo CCoollddFFuussiioonn – LLooss ssccrriippttss PPHHPP eessttáánn iinnccrruussttaaddooss eenn llooss ddooccuummeennttooss HHTTMMLL yy eell sseerrvviiddoorr llooss iinntteerrpprreettaa yy eejjeeccuuttaa aanntteess ddee sseerrvviirr llaass ppáággiinnaass aall cclliieennttee – EEll cclliieennttee nnoo vvee eell ccóóddiiggoo PPHHPP ssiinnoo llooss rreessuullttaaddooss qquuee pprroodduuccee
  • 3. IInnttrroodduucccciióónn aa PPHHPP • ¿CCóómmoo ffuunncciioonnaa PPHHPP?? Servidor web Cliente Página HTML Página HTML internet (navegador) <P>Hola, Ana</P>
  • 4. IInnttrroodduucccciióónn aa PPHHPP • ¿CCóómmoo ffuunncciioonnaa PPHHPP?? Página PHP Servidor web Cliente Intérprete PHP Página HTML Página HTML internet (navegador) <?PHP $nombre = "Ana"; print ("<P>Hola, $nombre</P>"); ?> <P>Hola, Ana</P>
  • 5. IInnttrroodduucccciióónn aa PPHHPP • BBrreevvee hhiissttoorriiaa ddee PPHHPP – CCrreeaaddoo ppoorr RRaassmmuuss LLeerrddoorrff ppaarraa uussoo ppeerrssoonnaall eenn 11999944 – PPHHPP == PPeerrssoonnaall HHyyppeerrtteexxtt PPrroocceessssoorr – VVeerrssiióónn aaccttuuaall:: PPHHPP 55 – EEss uunn mmóódduulloo qquuee ssee aaññaaddee aall sseerrvviiddoorr wweebb yy ffuuee ccoonncceebbiiddoo iinniicciiaallmmeennttee ppaarraa AAppaacchhee • ¿PPoorr qquuéé PPHHPP?? – PPoorr ssuuss vveennttaajjaass:: eess ppootteennttee,, ffáácciill ddee aapprreennddeerr,, ddee lliibbrree ddiissttrriibbuucciióónn,, ppeerrmmiittee eell aacccceessoo aa bbaasseess ddee ddaattooss yy oottrraass ffuunncciioonnaalliiddaaddeess oorriieennttaaddaass aa llaa rreedd – DDiissppoonnee ddee aabbuunnddaannttee ssooppoorrttee eenn llaa WWeebb
  • 6. IInnttrroodduucccciióónn aa PPHHPP • RReeqquuiissiittooss – SSeerrvviiddoorr wweebb AAppaacchhee ((wwwwww..aappaacchhee..oorrgg)) – ccoonn eell mmóódduulloo PPHHPP ((wwwwww..pphhpp..nneett)) – yy llaa bbaassee ddee ddaattooss MMyySSQQLL ((wwwwww..mmyyssqqll..ccoomm)) ssii ssee ddeesseeaa ccrreeaarr ppáággiinnaass ddiinnáámmiiccaass • OOttrraass uuttiilliiddaaddeess – HHeerrrraammiieennttaass ppaarraa llaa ggeessttiióónn ddee MMyySSQQLL,, ccoommoo PPHHPPMMyyAAddmmiinn ((wwwwww..pphhppmmyyaaddmmiinn..nneett)) – EEddiittoorreess ddee PPHHPP,, ccoommoo DDeevvPPHHPP ((wwwwww..ssoouurrcceeffoorrggee..nneett)) oo EEcclliippssee ((wwwwww..eecclliippssee..oorrgg)) – MMaannuuaalleess ddee PPHHPP yy MMyySSQQLL
  • 7. LLeenngguuaajjee PPHHPP bbáássiiccoo 11.. SSiinnttaaxxiiss bbáássiiccaa 22.. TTiippooss ddee ddaattooss 33.. VVaarriiaabblleess 44.. CCoonnssttaanntteess 55.. EExxpprreessiioonneess yy ooppeerraaddoorreess 66.. EEssttrruuccttuurraass ddee ccoonnttrrooll 77.. FFuunncciioonneess 88.. TTaabbllaass 99.. BBiibblliiootteeccaass ddee ffuunncciioonneess
  • 8. SSiinnttaaxxiiss bbáássiiccaa • PPHHPP eess sseennssiibbllee aa llaass mmaayyúússccuullaass • ¿CCóómmoo ssee iinnccrruussttaa eenn llaa ppáággiinnaa wweebb?? <<??PPHHPP ...... ??>> rreeccoommeennddaaddoo,, ssiieemmpprree ddiissppoonniibbllee <<??== eexxpprreessiióónn ??>> eeqquuiivvaallee aa <<?? eecchhoo eexxpprreessiióónn ??>> • LLaass iinnssttrruucccciioonneess ssee sseeppaarraann ccoonn uunn ;; ccoommoo eenn CC.. LLaa mmaarrccaa ffiinnaall ??>> iimmpplliiccaa uunn ;; • CCoommeennttaarriiooss:: ccoommoo eenn CC,, //** …… **// yy ////
  • 9. SSiinnttaaxxiiss bbáássiiccaa • PPaarraa iimmpprriimmiirr:: eecchhoo yy pprriinntt eecchhoo:: mmuueessttrraa uunnaa oo mmááss ccaaddeennaass eecchhoo ccaaddeennaa11 [[,, ccaaddeennaa22……]];; //// nnoo eess uunnaa ffuunncciióónn eecchhoo ““HHoollaa mmuunnddoo””;; eecchhoo ““HHoollaa ““,, ““mmuunnddoo””;; pprriinntt:: mmuueessttrraa uunnaa ccaaddeennaa pprriinntt ccaaddeennaa;; //// nnoo eess uunnaa ffuunncciióónn pprriinntt ““HHoollaa mmuunnddoo””;; pprriinntt ““HHoollaa ““ .. ““mmuunnddoo””;;
  • 10. SSiinnttaaxxiiss bbáássiiccaa • EEjjeemmpplloo:: <<HHTTMMLL>> <<HHEEAADD>> <<TTIITTLLEE>>MMii pprriimmeerr pprrooggrraammaa eenn PPHHPP<<//TTIITTLLEE>> <<//HHEEAADD>> <<BBOODDYY>> <<??PPHHPP pprriinntt ((““<<PP>>HHoollaa mmuunnddoo<<//PP>>””));; ??>> <<//BBOODDYY>> <<//HHTTMMLL>>
  • 11. SSiinnttaaxxiiss bbáássiiccaa • UUssoo ddee nn ppaarraa ggeenneerraarr ccóóddiiggoo HHTTMMLL lleeggiibbllee • aa)) SSiinn nn print (“<P>Párrafo 1</P>”); print (“<P>Párrafo 2</P>”); <P>Párrafo 1</P><P>Párrafo 2</P> Párrafo 1 Párrafo 2 Código PHP Código HTML Salida
  • 12. SSiinnttaaxxiiss bbáássiiccaa • UUssoo ddee nn ppaarraa ggeenneerraarr ccóóddiiggoo HHTTMMLL lleeggiibbllee • bb)) CCoonn nn print (“<P>Párrafo 1</P>n”); print (“<P>Párrafo 2</P>n”); <P>Párrafo 1</P> <P>Párrafo 2</P> Párrafo 1 Párrafo 2 Código PHP Código HTML Salida
  • 13. SSiinnttaaxxiiss bbáássiiccaa • IInncclluussiióónn ddee ffiicchheerrooss eexxtteerrnnooss:: – iinncclluuddee(()) – rreeqquuiirree(()) • AAmmbbooss iinncclluuyyeenn yy eevvaallúúaann eell ffiicchheerroo eessppeecciiffiiccaaddoo • DDiiffeerreenncciiaa:: eenn ccaassoo ddee eerrrroorr iinncclluuddee(()) pprroodduuccee uunn wwaarrnniinngg yy rreeqquuiirree(()) uunn eerrrroorr ffaattaall • SSee uussaarráá rreeqquuiirree(()) ssii aall pprroodduucciirrssee uunn eerrrroorr ddeebbee iinntteerrrruummppiirrssee llaa ccaarrggaa ddee llaa ppáággiinnaa • EEjjeemmpplloo::
  • 14. SSiinnttaaxxiiss bbáássiiccaa <HTML> <HEAD> <TITLE>Título</TITLE> <?PHP // Incluir bibliotecas de funciones require ("conecta.php"); require ("fecha.php"); require ("cadena.php"); require ("globals.php"); ?> </HEAD> <BODY> <?PHP include ("cabecera.html"); ?> // Código HTML + PHP . . . <?PHP include ("pie.html"); ?> </BODY> </HTML>
  • 15. TTiippooss ddee ddaattooss • PPHHPP ssooppoorrttaa 88 ttiippooss ddee ddaattooss pprriimmiittiivvooss:: – TTiippooss eessccaallaarreess:: bboooolleeaann,, iinntteeggeerr,, ddoouubbllee,, ssttrriinngg – TTiippooss ccoommppuueessttooss:: aarrrraayy,, oobbjjeecctt – TTiippooss eessppeecciiaalleess:: rreessoouurrccee,, NNUULLLL • EEll ttiippoo ddee uunnaa vvaarriiaabbllee nnoo ssee ssuueellee eessppeecciiffiiccaarr.. SSee ddeecciiddee eenn ttiieemmppoo ddee eejjeeccuucciióónn eenn ffuunncciióónn ddeell ccoonntteexxttoo yy ppuueeddee vvaarriiaarr • FFuunncciioonneess ddee iinntteerrééss:: – LLaa ffuunncciióónn ggeettttyyppee(()) ddeevvuueellvvee eell ttiippoo ddee uunnaa vvaarriiaabbllee – LLaass ffuunncciioonneess iiss__ttyyppee ccoommpprruueebbaann ssii uunnaa vvaarriiaabbllee eess ddee uunn ttiippoo ddaaddoo:: iiss__aarrrraayy(()),, iiss__bbooooll(()),, iiss__ffllooaatt(()),, iiss__iinntteeggeerr(()),, iiss__nnuullll(()),, iiss__nnuummeerriicc(()),, iiss__oobbjjeecctt(()),, iiss__rreessoouurrccee(()),, iiss__ssccaallaarr(()),, iiss__ssttrriinngg(()) – LLaa ffuunncciióónn vvaarr__dduummpp(()) mmuueessttrraa eell ttiippoo yy eell vvaalloorr ddee uunnaa vvaarriiaabbllee.. EEss eessppeecciiaallmmeennttee iinntteerreessaannttee ccoonn llooss aarrrraayyss
  • 16. TTiippooss ddee ddaattooss • TTiippoo iinntteeggeerr ((nnúúmmeerrooss eenntteerrooss)) – 2277,, --55,, 00 • TTiippoo ddoouubbllee ((nnúúmmeerrooss rreeaalleess)) – 11..223344,, --55..3333 • TTiippoo bboooolleeaann ((llóóggiiccoo)) – VVaalloorreess:: ttrruuee,, ffaallssee ((iinnsseennssiibblleess aa llaass mmaayyúússccuullaass)) – EEll 00 yy llaa ccaaddeennaa vvaaccííaa ttiieenneenn vvaalloorr ffaallssee
  • 17. TTiippooss ddee ddaattooss • TTiippoo ssttrriinngg:: – LLaass ccaaddeennaass ssee eenncciieerrrraann eennttrree ccoommiillllaass ssiimmpplleess oo ddoobblleess:: • ‘‘ssiimmpplleess’’:: aaddmmiittee llooss ccaarraacctteerreess ddee eessccaappee ’’ ((ccoommiillllaa ssiimmppllee)) yy ((bbaarrrraa)).. LLaass vvaarriiaabblleess NNOO ssee eexxppaannddeenn • ““ddoobblleess””:: aaddmmiittee mmááss ccaarraacctteerreess ddee eessccaappee,, ccoommoo nn,, rr,, tt,, ,, $$,, ””.. LLooss nnoommbbrreess ddee vvaarriiaabblleess SSÍÍ ssee eexxppaannddeenn • EEjjeemmppllooss:: $$aa == 99;; pprriinntt ‘‘aa vvaallee $$aann’’;; //// mmuueessttrraa aa vvaallee $$aann pprriinntt ““aa vvaallee $$aann””;; //// mmuueessttrraa aa vvaallee 99 yy aavvaannzzaa uunnaa llíínneeaa pprriinntt ““<<IIMMGG SSRRCC==‘‘llooggoo..ggiiff’’>>””;; //// mmuueessttrraa <<IIMMGG SSRRCC==‘‘llooggoo..ggiiff’’>> pprriinntt ““<<IIMMGG SSRRCC==””llooggoo..ggiiff””>>””;; //// mmuueessttrraa <<IIMMGG SSRRCC==““llooggoo..ggiiff””>> – AAcccceessoo aa uunn ccaarráácctteerr ddee llaa ccaaddeennaa:: • LLaa ffoorrmmaa eess $$iinniicciiaall == $$nnoommbbrree{{00}};;
  • 18. VVaarriiaabblleess • LLaass vvaarriiaabblleess ssiieemmpprree vvaann pprreecceeddiiddaass ddee uunn $$ • EEll nnoommbbrree eess sseennssiibbllee aa llaass mmaayyúússccuullaass • CCoommiieennzzaann ppoorr lleettrraa oo ssuubbrraayyaaddoo,, sseegguuiiddoo ddee lleettrraass,, nnúúmmeerrooss oo ssuubbrraayyaaddoo • VVaarriiaabblleess pprreeddeeffiinniiddaass:: $$GGLLOOBBAALLSS,, $$__SSEERRVVEERR,, $$__GGEETT,, $$__PPOOSSTT,, $$__CCOOOOKKIIEESS,, $$__FFIILLEESS,, $$__EENNVV,, $$__RREEQQUUEESSTT,, $$__SSEESSSSIIOONN • ÁÁmmbbiittoo:: gglloobbaalleess aall ffiicchheerroo ((eexxcceeppttoo ffuunncciioonneess)) oo llooccaalleess aa uunnaa ffuunncciióónn • EEjjeemmpplloo:: $$vvaalloorr == 55;; pprriinntt ““EEll vvaalloorr eess:: ““ .. $$vvaalloorr .. ““nn””;; pprriinntt ““EEll vvaalloorr eess:: $$vvaalloorrnn””;; //// oojjoo:: ccoommiillllaass ddoobblleess RReessuullttaaddoo:: EEll vvaalloorr eess:: 55
  • 19. VVaarriiaabblleess • VVaarriiaabblleess vvaarriiaabblleess – SSee ppuueeddeenn ccrreeaarr nnoommbbrreess ddee vvaarriiaabblleess ddiinnáámmiiccaammeennttee – LLaa vvaarriiaabbllee vvaarriiaabbllee ttoommaa ssuu nnoommbbrree ddeell vvaalloorr ddee oottrraa vvaarriiaabbllee pprreevviiaammeennttee ddeeccllaarraaddaa – EEjjeemmpplloo:: $$aa == ""hhoollaa"";; $$$$aa == ""mmuunnddoo"";; pprriinntt ""$$aa $$hhoollaann"";; pprriinntt ""$$aa $${{$$aa}}"";; RReessuullttaaddoo:: hhoollaa mmuunnddoo hhoollaa mmuunnddoo
  • 20. VVaarriiaabblleess • EEjjeemmpplloo ddee vvaarriiaabblleess vvaarriiaabblleess:: ppáággiinnaa iinntteerrnnaacciioonnaalliizzaaddaa ((11)) <?PHP $mensaje_es="Hola"; $mensaje_en="Hello"; $idioma = "es"; $mensaje = "mensaje_" . $idioma; print $$mensaje; ?>
  • 21. VVaarriiaabblleess • EEjjeemmpplloo ddee vvaarriiaabblleess vvaarriiaabblleess:: ppáággiinnaa iinntteerrnnaacciioonnaalliizzaaddaa ((22)) <?PHP $mensaje_es="Hola"; $mensaje_en="Hello"; $idioma = "en"; $mensaje = "mensaje_" . $idioma; print $$mensaje; ?>
  • 22. CCoonnssttaanntteess • DDeeffiinniicciióónn ddee ccoonnssttaanntteess:: ddeeffiinnee ((““CCOONNSSTTAANNTTEE””,, ““hhoollaa””));; pprriinntt CCOONNSSTTAANNTTEE;; • NNoo lllleevvaann $$ ddeellaannttee • SSóólloo ssee ppuueeddeenn ddeeffiinniirr ccoonnssttaanntteess ddee llooss ttiippooss eessccaallaarreess ((bboooolleeaann,, iinntteeggeerr,, ddoouubbllee,, ssttrriinngg))
  • 23. Expresiones yy ooppeerraaddoorreess • OOppeerraaddoorreess aarriittmmééttiiccooss:: ++,, --,, **,, //,, %%,, ++++,, ---- • OOppeerraaddoorr ddee aassiiggnnaacciióónn:: == ooppeerraaddoorreess ccoommbbiinnaaddooss:: ..==,, ++==,, eettcc $$aa == 33;; $$aa ++== 55;;  aa vvaallee 88 $$bb == ““hhoollaa ””;; $$bb ..== ““mmuunnddoo””;;  bb vvaallee ““hhoollaa mmuunnddoo””  EEqquuiivvaallee aa $$bb == $$bb .. ““mmuunnddoo””;; • OOppeerraaddoorreess ddee ccoommppaarraacciióónn:: ====,, !!==,, <<,, >>,, <<==,, >>== yy oottrrooss • OOppeerraaddoorr ddee ccoonnttrrooll ddee eerrrroorr:: @@.. AAnntteeppuueessttoo aa uunnaa eexxpprreessiióónn,, eevviittaa ccuuaallqquuiieerr mmeennssaajjee ddee eerrrroorr qquuee ppuueeddaa sseerr ggeenneerraaddoo ppoorr llaa eexxpprreessiióónn • OOppeerraaddoorreess llóóggiiccooss:: aanndd ((&&&&)),, oorr ((||||)),, !!,, xxoorr aanndd//&&&& yy oorr//|||| ttiieenneenn ddiiffeerreenntteess pprriioorriiddaaddeess • OOppeerraaddoorreess ddee ccaaddeennaa:: ccoonnccaatteennaacciióónn:: .. ((ppuunnttoo)) aassiiggnnaacciióónn ccoonn ccoonnccaatteennaacciióónn:: ..==
  • 24. Expresiones yy ooppeerraaddoorreess • PPrreecceeddeenncciiaa ddee ooppeerraaddoorreess ((ddee mmaayyoorr aa mmeennoorr)):: ++++,, ---- **,, //,, %% ++,,-- <<,, <<==,, >>,, >>== ====,, !!== &&&& |||| aanndd oorr
  • 25. Estructuras ddee ccoonnttrrooll • EEssttrruuccttuurraass sseelleeccttiivvaass:: – iiff--eellssee – sswwiittcchh • EEssttrruuccttuurraass rreeppeettiittiivvaass:: – wwhhiillee – ffoorr – ffoorreeaacchh
  • 26. Estructuras ddee ccoonnttrrooll • EEssttrruuccttuurraa sseelleeccttiivvaa if-else if (condición) sentencia if (condición1) sentencia 1 else if (condición2) sentencia 2 ... else if (condición n) sentencia n else sentencia n+1 if (condición) sentencia 1 else sentencia 2 • MMiissmmoo ccoommppoorrttaammiieennttoo qquuee eenn CC • LLaass sseenntteenncciiaass ccoommppuueessttaass ssee eenncciieerrrraann eennttrree llllaavveess • eellsseeiiff ppuueeddee iirr ttooddoo jjuunnttoo
  • 27. Estructuras ddee ccoonnttrrooll • EEjjeemmpplloo ddee eessttrruuccttuurraa sseelleeccttiivvaa iiff--eellssee:: <<??PPHHPP iiff (($$sseexxoo ==== ‘‘MM’’)) $$ssaalluuddoo == ""BBiieennvveenniiddaa,, "";; eellssee $$ssaalluuddoo == ""BBiieennvveenniiddoo,, "";; $$ssaalluuddoo == $$ssaalluuddoo .. $$nnoommbbrree;; pprriinntt (($$ssaalluuddoo));; ??>>
  • 28. Estructuras ddee ccoonnttrrooll • EEssttrruuccttuurraa sseelleeccttiivvaa switch sswwiittcchh ((eexxpprreessiióónn)) {{ ccaassee vvaalloorr__11:: sseenntteenncciiaa 11 bbrreeaakk;; ccaassee vvaalloorr__22:: sseenntteenncciiaa 22 bbrreeaakk;; …… ccaassee vvaalloorr__nn:: sseenntteenncciiaa nn bbrreeaakk;; ddeeffaauulltt sseenntteenncciiaa nn++11 }} • MMiissmmoo ccoommppoorrttaammiieennttoo qquuee eenn CC,, ssóólloo qquuee llaa eexxpprreessiióónn ddeell ccaassee ppuueeddee sseerr iinntteeggeerr,, ffllooaatt oo ssttrriinngg
  • 29. Estructuras ddee ccoonnttrrooll • EEjjeemmpplloo ddee eessttrruuccttuurraa sseelleeccttiivvaa sswwiittcchh:: sswwiittcchh (($$eexxtteennssiioonn)) {{ ccaassee ((""PPDDF"")):: $$ttiippoo == ""DDooccuummeennttoo AAddoobbee PPDDF"";; bbrreeaakk;; ccaassee ((""TTXXTT"")):: $$ttiippoo == ""DDooccuummeennttoo ddee tteexxttoo"";; bbrreeaakk;; ccaassee ((""HHTTMMLL"")):: ccaassee ((""HHTTMM"")):: $$ttiippoo == ""DDooccuummeennttoo HHTTMMLL"";; bbrreeaakk;; ddeeffaauulltt:: $$ttiippoo == ""AArrcchhiivvoo "" .. $$eexxtteennssiioonn;; }} pprriinntt (($$ttiippoo));;
  • 30. Estructuras ddee ccoonnttrrooll • EEssttrruuccttuurraa rreeppeettiittiivvaa while wwhhiillee ((ccoonnddiicciióónn)) sseenntteenncciiaa • MMiissmmoo ccoommppoorrttaammiieennttoo qquuee eenn CC
  • 31. Estructuras ddee ccoonnttrrooll • EEjjeemmpplloo ddee eessttrruuccttuurraa rreeppeettiittiivvaa wwhhiillee:: <<??PPHHPP pprriinntt ((""<<UULL>>nn""));; $$ii==11;; wwhhiillee (($$ii <<== 55)) {{ pprriinntt ((""<<LLII>>EElleemmeennttoo $$ii<<//LLII>>nn""));; $$ii++++;; }} pprriinntt ((""<<//UULL>>nn""));; ??>>
  • 32. Estructuras ddee ccoonnttrrooll • EEssttrruuccttuurraa rreeppeettiittiivvaa for ffoorr ((iinniicciiaalliizzaacciióónn;; ccoonnddiicciióónn;; iinnccrreemmeennttoo)) sseenntteenncciiaa • MMiissmmoo ccoommppoorrttaammiieennttoo qquuee eenn CC
  • 33. Estructuras ddee ccoonnttrrooll • EEjjeemmpplloo ddee eessttrruuccttuurraa rreeppeettiittiivvaa ffoorr:: <<??PPHHPP pprriinntt ((""<<UULL>>nn""));; ffoorr (($$ii==11;; $$ii<<==55;; $$ii++++)) pprriinntt ((""<<LLII>>EElleemmeennttoo $$ii<<//LLII>>nn""));; pprriinntt ((""<<//UULL>>nn""));; ??>>
  • 34. FFuunncciioonneess • EEjjeemmpplloo:: ffuunnccttiioonn ssuummaa (($$xx,, $$yy)) {{ $$ss == $$xx ++ $$yy;; rreettuurrnn $$ss;; }} $$aa==11;; $$bb==22;; $$cc==ssuummaa (($$aa,, $$bb));; pprriinntt $$cc;;
  • 35. FFuunncciioonneess • PPoorr ddeeffeeccttoo llooss ppaarráámmeettrrooss ssee ppaassaann ppoorr vvaalloorr • PPaassoo ppoorr rreeffeerreenncciiaa:: ffuunnccttiioonn iinnccrreemmeennttaa ((&&$$aa)) {{ $$aa == $$aa ++ 11;; }} $$aa==11;; iinnccrreemmeennttaa (($$aa));; pprriinntt $$aa;; //// MMuueessttrraa uunn 22
  • 36. FFuunncciioonneess • AArrgguummeennttooss ppoorr ddeeffeeccttoo ffuunnccttiioonn mmuueessttrraannoommbbrree (($$ttiittuulloo == ""SSrr.."")) {{ pprriinntt ""EEssttiimmaaddoo $$ttiittuulloo::nn"";; }} mmuueessttrraannoommbbrree (());; mmuueessttrraannoommbbrree ((""PPrrooff..""));; • SSaalliiddaa:: EEssttiimmaaddoo SSrr..:: EEssttiimmaaddoo PPrrooff..::
  • 37. FFuunncciioonneess • LLooss aarrgguummeennttooss ccoonn vvaalloorreess ppoorr ddeeffeeccttoo ddeebbeenn sseerr ssiieemmpprree llooss úúllttiimmooss:: ffuunnccttiioonn mmuueessttrraannoommbbrree (($$nnoommbbrree,, $$ttiittuulloo== ""SSrr.."")) {{ pprriinntt ""EEssttiimmaaddoo $$ttiittuulloo $$nnoommbbrree::nn"";; }} mmuueessttrraannoommbbrree ((““FFeerrnnáánnddeezz””));; mmuueessttrraannoommbbrree ((““FFeerrnnáánnddeezz””,, ""PPrrooff..""));; • SSaalliiddaa:: EEssttiimmaaddoo SSrr.. FFeerrnnáánnddeezz:: EEssttiimmaaddoo PPrrooff.. FFeerrnnáánnddeezz::
  • 38. AArrrraayyss == TTaabbllaa ¿QQuuéé eess uunn aarrrraayy?? • UUnn aarrrraayy eess sseenncciillllaammeennttee uunnaa ttaabbllaa ddee vvaalloorreess.. • CCaaddaa uunnoo ddee llooss eelleemmeennttooss ddee eessaa ttaabbllaa ssee iiddeennttiiffiiccaa ppoorr mmeeddiioo ddee uunn nnoommbbrree ((ccoommúúnn ppaarraa ttooddooss)) yy uunn íínnddiiccee ((qquuee ddiiffeerreenncciiaarrííaa aa ccaaddaa uunnoo ddee eellllooss)).. • LLaa ssiinnttaaxxiiss qquuee ppeerrmmiittee ddeeffiinniirr eelleemmeennttooss eenn uunn aarrrraayy eess llaa ssiigguuiieennttee:: $$nnoommbbrree[[iinnddiiccee]] EEll íínnddiiccee ppuueeddee sseerr uunn nnúúmmeerroo ((hhaabbrrííaa qquuee eessccrriibbiirrlloo ddeennttrroo ddeell ccoorrcchheettee ssiinn ccoommiillllaass)),, uunnaa ccaaddeennaa ((qquuee hhaabbrrííaa qquuee ppoonneerr eenn eell ccoorrcchheettee eenncceerrrraaddaa eennttrree ccoommiillllaass sseenncciillllaass ––''––)).. CCuuaannddoo llooss íínnddiicceess ddee uunn aarrrraayy ssoonn nnúúmmeerrooss ssee ddiiccee qquuee eess eessccaallaarr mmiieennttrraass qquuee ssii ffuueerraann ccaaddeennaass ssee llee llllaammaarrííaa aarrrraayy aassoocciiaattiivvoo..
  • 39. Arrays UUnniiddiimmeennssiioonnaalleess AArrrraayyss EEssccaallaarreess • LLooss eelleemmeennttooss ddee uunn aarrrraayy eessccaallaarr ppuueeddee eessccrriibbiirrssee ccoonn uunnaa ddee eessttaass ssiinnttaaxxiiss:: $$aa[[]]==vvaalloorr óó $$aa[[xxxx]]==vvaalloorr • EEnn eell pprriimmeerroo ssee aassiiggnnaa llooss íínnddiicceess ddee ffoorrmmaa aauuttoommááttiiccaa,, ééssttee eess uunn vvaalloorr eenntteerroo yy eemmppiieezzaa ppoorr eell 00 ((CCEERROO)).. • EEnn eell sseegguunnddoo ddee llooss ccaassooss,, sseerreemmooss nnoossoottrrooss qquuiieenneess ppoonnggaammooss ((xxxx)) eell nnúúmmeerroo ccoorrrreessppoonnddiieennttee aall vvaalloorr ddeell íínnddiiccee.. AArrrraayyss AAssoocciiaattiivvoo • LLooss eelleemmeennttooss ddee uunn aarrrraayy aassoocciiaattiivvoo ppuueeddeenn eessccrriibbiirrssee uussaannddoo llaa ssiigguuiieennttee ssiinnttaaxxiiss:: $$aa[[''iinnddiiccee'']]==vvaalloorr • EEnn ééssttee ccaassoo eessttaammooss oobblliiggaaddooss aa eessccrriibbiirr eell nnoommbbrree ddeell íínnddiiccee qquuee hhaabbrráá ddee sseerr uunnaa ccaaddeennaa yy ddeebbee ppoonneerrssee eennttrree ccoommiillllaass.. • TTaannttoo eenn eessttee ssuuppuueessttoo ccoommoo eenn eell aanntteerriioorr,, eess ppoossiibbllee ––yy bbaassttaannttee ffrreeccuueennttee–– uuttiilliizzaarr ccoommoo íínnddiiccee eell ccoonntteenniiddoo ddee uunnaa vvaarriiaabbllee.. EEll mmooddoo ddee hhaacceerrlloo sseerrííaa:: $$aa[[$$iinndd]]==vvaalloorr • EEnn eessttee ccaassoo,, sseeaa ccuuaall ffuueerree eell vvaalloorr ddee llaa vvaarriiaabbllee $$iinndd,, eell nnoommbbrree ddee llaa vvaarriiaabbllee nnuunnccaa ssee ppoonnee eennttrree ccoommiillllaass..
  • 40. Arrays UUnniiddiimmeennssiioonnaalleess <<<< EEssccaallaarreess yy AAssoocciiaattiivvooss >>>> $a[0]=“Domingo” $a[“Primero”]=“Domingo”
  • 41. Arrays BBiiddiimmeennssiioonnaalleess AArrrraayyss EEssccaallaarreess • LLooss eelleemmeennttooss ddee uunn aarrrraayy bbiiddiimmeennssiioonnaall eessccaallaarr ppuueeddeenn eessccrriibbiirrssee uussaannddoo uunnaa ddee eessttaass ssiinnttaaxxiiss:: $$aa[[]][[]]==vvaalloorr óó $$aa[[xxxx]][[]]==vvaalloorr $$aa[[]][[xxxx]]==vvaalloorr óó $$aa[[xxxx]][[yyyy]]==vvaalloorr AArrrraayyss AAssoocciiaattiivvoo • LLooss eelleemmeennttooss ddee uunn aarrrraayy aassoocciiaattiivvoo ssee ppuueeddeenn eessccrriibbiirr uussaannddoo llaa ssiigguuiieennttee ssiinnttaaxxiiss:: $$aa[[""iinnddiiccee11"" ]][[""iinnddiiccee22"" ]]==vvaalloorr
  • 42. LLaa ffuunncciióónn AArrrraayy $$aa== aarrrraayy ((íínnddiiccee 00 ==>> vvaalloorr ,, .......... ,, íínnddiiccee nn ==>> vvaalloorr ,,));; PPoorr eejjeemmpplloo:: $$zz==aarrrraayy (( 00 ==>> 22,, 11 ==>> ""PPeeppee"",, 22 ==>> 3344..77,, 33 ==>> ""3344AAmmbbrroossiioo"",, ));; pprroodduucciirráá iigguuaall rreessuullttaaddoo qquuee:: $$zz[[00]]==22;; $$zz[[11]]==""PPeeppee"";; $$zz[[22]]==3344..77;; $$zz[[33]]==""3344AAmmbbrroossiioo"";;
  • 43. LLaa ffuunncciióónn AArrrraayy • LLaa ffuunncciióónn aarrrraayy(()) ppeerrmmiittee eessccrriibbiirr aarrrraayyss ddee ccuuaallqquuiieerr ddiimmeennssiióónn uuttiilliizzaannddoo llaa ttééccnniiccaa ddee aanniiddaaddoo.. EEjjeemmpplloo ddee aarrrraayy eessccaallaarr:: $$zz[[00]][[00]]==3344;; $$zz[[00]][[11]]==3355;; $$zz[[00]][[22]]==3366;; $$zz[[11]][[00]]==113344;; $$zz[[11]][[11]]==113355;; $$zz[[11]][[22]]==113366;; ppooddrrííaammooss hhaacceerrlloo aassíí:: $$zz==aarrrraayy(( 00 ==>> aarrrraayy ((00 ==>> 3344,, 11 ==>> 3355,, 22 ==>> 3366,,)),, 11 ==>> aarrrraayy ((00 ==>> 113344,, 11 ==>> 113355,, 22 ==>> 113366,,)) ));; • EEll aanniiddaaddoo ssuucceessiivvoo ppeerrmmiittiirrííaa ggeenneerraarr aarrrraayyss ddee ccuuaallqquuiieerr ddiimmeennssiióónn.. EEjjeemmpplloo ddee aarrrraayy aassoocciiaattiivvoo:: $$zz[[""aa""]][[""AA""]]==3344;; $$zz[[""aa""]][[""BB""]]==3355;; $$zz[[""aa""]][[""CC""]]==3366;; $$zz[[""bb""]][[""AA""]]==113344;; $$zz[[""bb""]][[""BB""]]==113355;; $$zz[[""bb""]][[""CC""]]==113366;; qquuee ppooddrrííaa ddeeffiinniirrssee ttaammbbiiéénn ddee eessttaa ffoorrmmaa:: $$zz==aarrrraayy((""aa"" ==>> aarrrraayy ((""AA"" ==>> 3344,, ""BB"" ==>> 3355,, ""CC"" ==>> 3366,, )),, ""bb"" ==>> aarrrraayy ((""AA"" ==>> 113344,, ""BB"" ==>> 113355,, ""CC"" ==>> $$aa== aarrrraayy ((íínnddiiccee 00 ==>> vvaalloorr ,, .......... ,, íínnddiiccee nn ==>> vvaalloorr ,,));;
  • 44. Bibliotecas ddee ffuunncciioonneess • EExxiisstteenn mmuucchhaass bbiibblliiootteeccaass ddee ffuunncciioonneess eenn PPHHPP • AAllgguunnooss eejjeemmppllooss:: – FFuunncciioonneess ddee mmaanniippuullaacciióónn ddee ccaaddeennaass – FFuunncciioonneess ddee ffeecchhaa yy hhoorraa – FFuunncciioonneess ddee aarrrraayyss – FFuunncciioonneess ddee ffiicchheerrooss – FFuunncciioonneess mmaatteemmááttiiccaass – FFuunncciioonneess ddee bbaasseess ddee ddaattooss – FFuunncciioonneess ddee rreedd • AAllgguunnaass bbiibblliiootteeccaass rreeqquuiieerreenn llaa iinnssttaallaacciióónn ddee ccoommppoonneenntteess aaddiicciioonnaalleess • TTooddaass llaass ffuunncciioonneess ddee bbiibblliiootteeccaa eessttáánn ccoommeennttaaddaass eenn llaa ddooccuummeennttaacciióónn ddee PPHHPP
  • 45. Bibliotecas ddee ffuunncciioonneess • FFuunncciioonneess ddee mmaanniippuullaacciióónn ddee ccaaddeennaass – eexxppllooddee(()) • DDiivviiddee uunnaa ccaaddeennaa eenn ssuubbccaaddeennaass • aarrrraayy eexxppllooddee ((ssttrriinngg sseeppaarraattoorr,, ssttrriinngg ssttrriinngg [[,, iinntt lliimmiitt]])) – rrttrriimm(()),, llttrriimm(()),, ttrriimm(()) • EElliimmiinnaann ccaarraacctteerreess aa llaa ddeerreecchhaa,, aa llaa iizzqquuiieerrddaa oo ppoorr aammbbooss llaaddooss ddee uunnaa ccaaddeennaa • ssttrriinngg rrttrriimm (( ssttrriinngg ssttrr [[,, ssttrriinngg cchhaarrlliisstt]])) – ssttrrssttrr(()) • BBuussccaa llaa pprriimmeerraa ooccuurrrreenncciiaa ddee uunnaa ssuubbccaaddeennaa – ssttrrttoolloowweerr(()) // ssttrrttoouuppppeerr(()) • CCoonnvviieerrttee uunnaa ccaaddeennaa aa mmiinnúússccuullaa // mmaayyúússccuullaa – ssttrrccmmpp(()) // ssttrrccaasseeccmmpp(()) • CCoommppaarraa ddooss ccaaddeennaass ccoonn//ssiinn ddiissttiinncciióónn ddee mmaayyúússccuullaass – ssttrrlleenn(()) • CCaallccuullaa llaa lloonnggiittuudd ddee uunnaa ccaaddeennaa
  • 46. Bibliotecas ddee ffuunncciioonneess • FFuunncciioonneess ddee ffeecchhaa yy hhoorraa – ddaattee(()) • FFoorrmmaatteeaa uunnaa ffeecchhaa sseeggúúnn uunn ffoorrmmaattoo ddaaddoo • EEjjeemmpplloo:: $$ffeecchhaa == ddaattee ((""jj//nn//YY HH::ii""));; pprriinntt ((""$$ffeecchhaa""));; RReessuullttaaddoo:: 2266//99//22000055 1177::3366 – ssttrrttoottiimmee(()) • CCoonnvviieerrttee uunnaa ffeecchhaa eenn uunn ttiimmeessttaammpp ddee UUNNIIXX • EEjjeemmpplloo:: $$ffeecchhaa == ddaattee ((""jj//nn//YY"",, ssttrrttoottiimmee((““55 aapprriill 22000011""))));; pprriinntt ((""$$ffeecchhaa""));; RReessuullttaaddoo:: 55//44//22000011
  • 47. Bibliotecas ddee ffuunncciioonneess • FFuunncciioonneess ddee aarrrraayyss – aarrrraayy__ccoouunntt__vvaalluueess(()) • CCaallccuullaa llaa ffrreeccuueenncciiaa ddee ccaaddaa uunnoo ddee llooss eelleemmeennttooss ddee uunn aarrrraayy – aarrrraayy__sseeaarrcchh(()) • BBuussccaa uunn eelleemmeennttoo eenn uunn aarrrraayy – ccoouunntt(()) • CCuueennttaa llooss eelleemmeennttooss ddee uunn aarrrraayy – ssoorrtt(()),, rrssoorrtt(()) • OOrrddeennaa yy rreeiinnddeexxaa uunn aarrrraayy ((rr==ddeeccrreecciieennttee)) – kkssoorrtt(()),, kkrrssoorrtt(()) • OOrrddeennaa ppoorr ccllaavveess uunn aarrrraayy ((rr==ddeeccrreecciieennttee))
  • 48. FFoorrmmuullaarriiooss 11..AAcccceessoo aa ffoorrmmuullaarriiooss HHTTMMLL ddeessddee PPHHPP 22..EEll ffoorrmmuullaarriioo ddee PPHHPP 33..SSuubbiiddaa ddee ffiicchheerrooss aall sseerrvviiddoorr 44..VVaalliiddaacciióónn ddee llooss ddaattooss ddee uunn ffoorrmmuullaarriioo
  • 49. Acceso a formularios ddeessddee PPHHPP • DDeessddee PPHHPP ssee ppuueeddee aacccceeddeerr ffáácciillmmeennttee aa llooss ddaattooss iinnttrroodduucciiddooss ddeessddee uunn ffoorrmmuullaarriioo HHTTMMLL • VVeeáámmoosslloo ccoonn uunn eejjeemmpplloo ssiimmppllee
  • 50. Acceso a formularios ddeessddee PPHHPP • FFiicchheerroo uunnoo..pphhpp <<HHTTMMLL>> <<BBOODDYY>> <<FFOORRMM AACCTTIIOONN==””ddooss..pphhpp”” MMEETTHHOODD==””PPOOSSTT””>> EEddaadd:: <<IINNPPUUTT TTYYPPEE==””tteexxtt”” NNAAMMEE==””eeddaadd””>> <<IINNPPUUTT TTYYPPEE==””ssuubbmmiitt”” VVAALLUUEE==””aacceeppttaarr””>> <<//FFOORRMM>> <<//BBOODDYY>> <<//HHTTMMLL>> • FFiicchheerroo ddooss..pphhpp <<HHTTMMLL>> <<BBOODDYY>> <<??PPHHPP pprriinntt ((““LLaa eeddaadd eess:: $$eeddaadd””));; ??>> <<//BBOODDYY>> <<//HHTTMMLL>>
  • 51. Acceso a formularios ddeessddee PPHHPP
  • 52. Acceso a formularios ddeessddee PPHHPP • A partir de PHP 4.2.0, el valor por defecto de la directiva de PHP register_globals es off • Esto tiene una gran importancia sobre los formularios, ya que no es posible acceder a las variables enviadas de la manera anterior (como variables globales). En su lugar hay que utilizar la variable predefinida de PHP $_POST, escribiendo $_POST[‘edad’] en lugar de $edad • Se puede poner register_globals = on en el fichero de configuración php.ini, pero no es recomendable por motivos de seguridad. Una alternativa que permite hacer mínimos cambios en el código ya existente es la siguiente: $edad = $_POST[‘edad’];
  • 53. Acceso a formularios ddeessddee PPHHPP • Fichero uno.php <HTML> <BODY> <FORM ACTION=”dos.php” METHOD=”POST”> Edad: <INPUT TYPE=”text” NAME=”edad”> <INPUT TYPE=”submit” VALUE=”aceptar”> </FORM> </BODY> </HTML> • Fichero dos.php <HTML> <BODY> <?PHP $edad = $_POST[‘edad’]; print (“La edad es: $edad”); ?> </BODY> </HTML>
  • 54. Acceso a formularios ddeessddee PPHHPP • AAcccceessoo aa llooss ddiiffeerreenntteess ttiippooss ddee eelleemmeennttooss ddee eennttrraaddaa ddee ffoorrmmuullaarriioo – EElleemmeennttooss ddee ttiippoo IINNPPUUTT • TTEEXXTT • RRAADDIIOO • CCHHEECCKKBBOOXX • BBUUTTTTOONN • FFIILLEE • HHIIDDDDEENN • PPAASSSSWWOORRDD • SSUUBBMMIITT – EElleemmeennttoo SSEELLEECCTT • SSiimmppllee // mmúúllttiippllee – EElleemmeennttoo TTEEXXTTAARREEAA
  • 55. Acceso a formularios ddeessddee PPHHPP • TTEEXXTT Introduzca la cadena a buscar: <INPUT TYPE="text" NAME="cadena" VALUE="valor por defecto" SIZE="20"> <?PHP $cadena = $_POST[‘cadena’]; print ($cadena); ?>
  • 56. Acceso a formularios ddeessddee PPHHPP • RRAADDIIOO Sexo: <INPUT TYPE="radio" NAME=“sexo" VALUE=“M“ CHECKED>Mujer <INPUT TYPE="radio" NAME=“sexo" VALUE=“H">Hombre <?PHP $sexo = $_POST[‘sexo’]; print ($sexo); ?>
  • 57. Acceso a formularios ddeessddee PPHHPP • CCHHEECCKKBBOOXX <INPUT TYPE="checkbox" NAME="extras[]" VALUE="garaje" CHECKED>Garaje <INPUT TYPE="checkbox" NAME="extras[]" VALUE="piscina">Piscina <INPUT TYPE="checkbox" NAME="extras[]" VALUE="jardin">Jardín <?PHP $extras = $_POST[‘extras’]; $n = count ($extras); for ($i=0; $i<$n; $i++) print (“$extras[$i]<BR>n”); //foreach ($extras as $extra) //print (“$extra<BR>n”); ?>
  • 58. Acceso a formularios ddeessddee PPHHPP • BBUUTTTTOONN <INPUT TYPE="button" NAME=“actualizar" VALUE="Actualizar datos"> <?PHP $actualizar = $_POST[‘actualizar’]; if ($actualizar) print ("Se han actualizado los datos"); ?>
  • 59. Acceso a formularios ddeessddee PPHHPP • FFIILLEE <FORM ACTION="procesa.php" METHOD="post“ ENCTYPE="multipart/form-data"> <INPUT TYPE="file" NAME="fichero"> </FORM>
  • 60. Acceso a formularios ddeessddee PPHHPP • HHIIDDDDEENN <?PHP print(“<INPUT TYPE=’hidden’ NAME=’username’ VALUE=’$usuario’>n”); ?> <?PHP $username = $_POST[‘username’]; print ($username); ?>
  • 61. Acceso a formularios ddeessddee PPHHPP • PPAASSSSWWOORRDD Contraseña: <INPUT TYPE="password" NAME="clave"> <?PHP $clave = $_POST[‘clave’]; print ($clave); ?>
  • 62. Acceso a formularios ddeessddee PPHHPP • SSUUBBMMIITT <INPUT TYPE="submit" NAME="enviar" VALUE="Enviar datos"> <?PHP $enviar = $_POST[‘enviar’]; if ($enviar) print ("Se ha pulsado el botón de enviar"); ?>
  • 63. Acceso a formularios ddeessddee PPHHPP • SSEELLEECCTT ssiimmppllee Color: <SELECT NAME=“color"> <OPTION VALUE=“rojo" SELECTED>Rojo <OPTION VALUE=“verde">Verde <OPTION VALUE=“azul">Azul </SELECT> <?PHP $color = $_POST[‘color’]; print ($color); ?>
  • 64. Acceso a formularios ddeessddee PPHHPP • SSEELLEECCTT mmúúllttiippllee Idiomas: <SELECT MULTIPLE SIZE="3" NAME="idiomas[]"> <OPTION VALUE="ingles" SELECTED>Inglés <OPTION VALUE="frances">Francés <OPTION VALUE="aleman">Alemán <OPTION VALUE="holandes">Holandés </SELECT> <?PHP $idiomas = $_POST[‘idiomas’]; $n = count ($idiomas); for ($i=0; $i<$n; $i++) print (“$idiomas[$i]<BR>n”); //foreach ($idiomas as $idioma) //print (“$idioma<BR>n”); ?>
  • 65. Acceso a formularios ddeessddee PPHHPP • TTEEXXTTAARREEAA Comentario: <TEXTAREA COLS=“50" ROWS=“4" NAME="comentario"> Este libro me parece ... </TEXTAREA> <?PHP $comentario = $_POST[‘comentario’]; print ($comentario); ?>
  • 66. EEll ffoorrmmuullaarriioo ddee PPHHPP • LLaa ffoorrmmaa hhaabbiittuuaall ddee ttrraabbaajjaarr ccoonn ffoorrmmuullaarriiooss eenn PPHHPP eess uuttiilliizzaarr uunn úúnniiccoo pprrooggrraammaa qquuee pprroocceessee eell ffoorrmmuullaarriioo oo lloo mmuueessttrree sseeggúúnn hhaayyaa ssiiddoo oo nnoo eennvviiaaddoo,, rreessppeeccttiivvaammeennttee • VVeennttaajjaass:: – DDiissmmiinnuuyyee eell nnúúmmeerroo ddee ffiicchheerrooss – PPeerrmmiittee vvaalliiddaarr llooss ddaattooss ddeell ffoorrmmuullaarriioo eenn eell pprrooppiioo ffoorrmmuullaarriioo • PPrroocceeddiimmiieennttoo:: ssii ssee hhaa eennvviiaaddoo eell ffoorrmmuullaarriioo:: PPrroocceessaarr ffoorrmmuullaarriioo ssii nnoo:: MMoossttrraarr ffoorrmmuullaarriioo ffssii
  • 67. EEll ffoorrmmuullaarriioo ddee PPHHPP • EEssqquueemmaa ddee ffuunncciioonnaammiieennttoo:: si se ha enviado el formulario: Procesar formulario si no: Mostrar formulario fsi a) b) – LLaa 11ª vveezz qquuee ssee ccaarrggaa llaa ppáággiinnaa ssee mmuueessttrraa eell ffoorrmmuullaarriioo ((aa)) – LLaa 22ª vveezz ssee pprroocceessaa eell ffoorrmmuullaarriioo ((bb))
  • 68. EEll ffoorrmmuullaarriioo ddee PPHHPP • PPaarraa ssaabbeerr ssii ssee hhaa eennvviiaaddoo eell ffoorrmmuullaarriioo ssee aaccuuddee aa llaa vvaarriiaabbllee ccoorrrreessppoonnddiieennttee aall bboottóónn ddee eennvvííoo.. SSii eessttee bboottóónn aappaarreeccee ddee llaa ssiigguuiieennttee ffoorrmmaa eenn eell ffoorrmmuullaarriioo HHTTMMLL:: <<IINNPPUUTT TTYYPPEE==""SSUUBBMMIITT"" NNAAMMEE==""eennvviiaarr““ VVAALLUUEE==""pprroocceessaarr"">> eennttoonncceess llaa ccoonnddiicciióónn aanntteerriioorr ssee ttrraannssffoorrmmaa eenn:: iiff ((iisssseett(($$eennvviiaarr)))) oo bbiieenn iiff (($$eennvviiaarr ==== ““pprroocceessaarr””))