Está en la página 1de 34

PHP

Lenguaje PHP bsico


Introduccin
Sintaxis bsica
Tipos de datos
Variables
Constantes
Expresiones y operadores
Estructuras de control
Funciones
Tablas
Bibliotecas de funciones
Introduccin
PHP es un lenguae de progra!acin
interpretado
"ise#ado originalmente para la
creacin de pginas web dinmicas
$sado principal!ente en interpretacin
del lado del servidor
%ctual!ente puede ser utili&ado desde
una interfa& de lnea de comandos
o en la creacin de otros tipos de
progra!as 'aplicaciones con interfaz
grfica usando las bibliotecas (t o
)T*+,
-a !ayor parte de su sintaxis .a sido
to!ada de C/ 0a1a y Perl
2tras tecnolog3as de ser1idor4
Coldfusion/ 0SP/ PHP/ %SP o
Web esttica vs dinmica
Pgina esttica co!puesta por
cdigo HT5-6
Cuando el arc.i1o es re7uerido
por el na1egador/ el ser1idor
lo en13a y tal cual
Todos los 1isitantes 1ern el
!is!o contenido6
Web esttica vs dinmica
En sitio din!ico/ la pgina se
procesa en el ser1idor antes de
ser en1iada al na1egador6
El arc.i1o en php contiene cdigo
php 7ue al ser eecutado
generar cdigo html6
%l eecutar el cdigo/ pueden
.acerse consultas8accesos a
bases de datos u otros arc.i1oso
o ser1icios6
El resultado final 7ue se en13a al
na1egador tiene extensin php/
pero es cdigo H!"L
9esultado generado para este
1isitante en particular
#s$uema de funcionamiento
%inta&is bsica
PHP es sensible a las !ay:sculas
;C!o se incrusta en la pgina <eb=
<?PHP ... ?>
Co!entarios4 co!o en C/ 8> ? >8 y 88
-as instrucciones se separan con un @ co!o en C6 -a !arca final =
A i!plica un @
%inta&is bsica
Para de1ol1er un texto4 echo y print
ec.o4 !uestra una o !s cadenas
ec.o cadenaB C/ cadenaD?E@ 88 no es una funcin
echo Hola mundo;
echo Hola , mundo;
print4 !uestra una cadena
print cadena@ 88 no es una funcin
print Hola mundo;
print Hola . mundo;
%inta&is bsica
Ee!plo4
<HTML>
<HEAD>
<TTLE>Mi primer pro!rama en PHP<"TTLE>
<"HEAD>
<#$D%>
<?PHP
echo &<p>Hola mundo<"p>';
?>
<"#$D%>
<"HTML>
%inta&is bsica
$so de Fn para generar cdigo HT5- legible
a, Sin Fn
echo &<P>P(rra)o *<"P>';
echo &<P>P(rra)o +<"P>';
<P>P(rra)o *<"P><P>P(rra)o +<"P>
P(rra)o *
P(rra)o +
Cdigo PHP
Cdigo HT5-
Salida
%inta&is bsica
$so de Fn para generar cdigo HT5- legible
b, Con Fn
echo &<P>P(rra)o *<"P>,n';
echo &<P>P(rra)o +<"P>,n';
<P>P(rra)o *<"P>
<P>P(rra)o +<"P>
P(rra)o *
P(rra)o +
Cdigo PHP
Cdigo HT5-
Salida
%inta&is bsica
Inclusin de fic.eros externos4
include',
re$uire',
%!bos incluyen y e1al:an el fic.ero especificado
"iferencia4 en caso de error include', produce un <arning y
re7uire', un error fatal
Se usar re7uire', si al producirse un error debe interru!pirse la
carga de la pgina
Ee!plo4
%inta&is bsica
<HTML>
<HEAD>
<TTLE>T-tulo<"TTLE>
<?PHP
"" ncluir .i.lioteca/ de )uncione/
re0uire &12li.dir"conecta.php1';
re0uire &12li.dir")echa.php1';
?>
<"HEAD>
<#$D%>
<?PHP
include &1ca.ecera.html1';
?>
"" 34di!o HTML 5 PHP
. . .
<?PHP
include &1pie.html1';
?>
<"#$D%>
<"HTML>
!ipos de datos
PHP soporta G tipos de datos primitivos4
boolean/ integer/ double/ string 'escalares,
array/ obect 'co!puestos,
resource/ H$--
El tipo de una 1ariable no se suele especificar6 Se decide en
tie!po de eecucin en funcin del contexto y puede 1ariar
Funciones de interIs4
-a funcin gettype', de1uel1e el tipo de una 1ariable
-as funciones isJtype co!prueban si una 1ariable es de un tipo dado4
isJarray',/ isJbool',/ isJfloat',/ isJinteger',/ isJnull',/
isJnu!eric',/ isJobect',/ isJresource',/ isJscalar',/
isJstring',
!ipos de datos
Tipo integer 'n:!eros enteros,
DK/ LM/ N
Tipo double 'n:!eros reales,
B6DOP/ LM6OO
Tipo boolean 'lgico,
Valores4 true/ false 'insensibles a las !ay:sculas,
El N y la cadena 1ac3a tienen 1alor false
!ipos de datos
Tipo string4
-as cadenas se encierran entre co!illas si!ples o dobles4
Qsi!plesR4 ad!ite los caracteres de escape FR 'co!illa si!ple, y FF 'barra,6 -as
1ariables '( se expanden
SdoblesT4 ad!ite !s caracteres de escape/ co!o Fn/ Fr/ Ft/ FF/ FU/ FT6 -os no!bres de
1ariables %) se expanden
2a 6 7;
echo 8a 9ale 2a:; "" mue/tra a 9ale 2a
echo a 9ale 2a; "" mue/tra a 9ale 7
*ariables
-as 1ariables sie!pre 1an precedidas de un U
El no!bre es sensible a las !ay:sculas
Co!ien&an por letra o subrayado/ seguido de letras/ n:!eros o
subrayado
Variables predefinidas del siste!a64
U)-2B%-S/ UJSE9VE9/ UJ)ET/ UJP2ST/ UJC22*IES/ UJFI-ES/
UJEHV/ UJ9E($EST/ UJSESSI2H
V!bito4 globales al fic.ero 'excepto funciones, o locales a una
funcin
+onstantes
"efinicin de constantes4
de)ine &3$;<TA;TE, hola';
echo 3$;<TA;TE;
Ho lle1an U delante
Slo se pueden definir constantes de los tipos escalares 'boolean/
integer/ double/ string,
#&presiones , operadores
2peradores arit!Iticos4
+/ L/ >/ 8/ W/ ++/ LL
2perador de asignacin4
X
operadores co!binados4 6X/ +X/ etc
Ua X O@ Ua +X M@ a 1ale G
Ub X S.ola T@ Ub 6X S!undoT@ b 1ale S.ola !undoT
E7ui1ale a Ub X Ub 6 S!undoT@
2peradores de co!paracin4
XX/ YX/ Z/ A/ ZX/ AX y otros
2perador de control de error4 [6 %ntepuesto a una expresin/ e1ita
cual7uier !ensae de error 7ue pueda ser generado por la expresin
2peradores de cadena4
concatenacin4 6 'punto,
asignacin con concatenacin4 6X
2peradores lgicos4
and '\\,/ or ']],/ Y/ xor
#&presiones , operadores
Precedencia de operadores 'de !ayor a !enor,4
55, ==
>, ", ?
5,=
<, <6, >, >6
66, @6
AA
BB
#structuras de control
ifLelse
<.ile
do 66 <.ile
for
foreac.
s<itc.
#structuras de control
ifLelse
if 'expresinB,
sentencia B
else if 'expresinD,
sentencia D
666
else if 'expresin n,
sentencia n
else
sentencia n+B
5is!o co!porta!iento 7ue en C
-as sentencias co!puestas se encierran entre lla1es
elseif puede ir todo unto
#structuras de control
<.ile
Chile &eDpre/i4n'
/entencia
5is!o co!porta!iento 7ue en C
#structuras de control
for
)or &eDpre/i4n*; eDpre/i4n+; eDpre/i4nE'
/entencia
5is!o co!porta!iento 7ue en C
#structuras de control
s<itc.
/Citch &eDpre/i4n'
F
ca/e 9alor *G
/entencia *
.reaH;
ca/e 9alor +G
/entencia +
.reaH;
I
ca/e 9alor nG
/entencia n
.reaH;
de)ault
/entencia n5*
J
5is!o co!porta!iento 7ue en C/ slo 7ue la expresin del case
puede ser integer/ float o string
-unciones .eclaracin
.eclaracin de funcines/
desde PHPP se pueden declarar antes y despuIs del
lugar donde es lla!ada6
)unction /uma &2D, 2K'F ""
Declaracion
2/ 6 2D 5 2K;
return 2/; "" De9uel9e
9alor
J
-unciones Paso deparmetros
Por defecto los par!etros se pasan por 1alor
Para pasarlos por referencia utili&a!os el operador \
)unction incrementa &A2a'
F
2a 6 2a 5 *;
J
2a6*;
incrementa &2a';
print 2a; "" Mue/tra un +
-unciones 0rgumentos por defecto
%rgu!entos por defecto
)unction mue/tranom.re &2titulo 6 1<r.1'
F
print 1E/timado 2tituloG,n1;
J
mue/tranom.re &';
mue/tranom.re &1Pro).1';
Salida4
E/timado <r.G
E/timado Pro).G
-unciones 0rgumentos por defecto
-os argu!entos con 1alores por defecto deben ser sie!pre los
:lti!os4
)unction mue/tranom.re &2nom.re, 2titulo6 1<r.1'
F
print 1E/timado 2titulo 2nom.reG,n1;
J
mue/tranom.re &Lern(ndeM';
mue/tranom.re &Lern(ndeM, 1Pro).1';
Salida4
E/timado <r. Lern(ndeMG
E/timado Pro). Lern(ndeMG
0rra,s 0rra,s asociativos
$n array es una 1ariable 7ue est co!puesta de 1arios ele!entos a los
7ue pode!os acceder !ediante un 3ndice nu!Irico o una cla1e6
"eclaracin6 Sintaxis4
arraK &Ncla9e 6>O 9alor, ...'
-a cla1e puede ser una cadena o un entero no ne!ati9o6
El 1alor puede ser de cualquier tipo vlido en PHP/ incluyendo
otro array
Ee!plos4
2colore/ 6 arraK &8roPo:6>*Q*, R6>R*, 8aMul:6>+RR';
2medida/ 6 arraK &*Q, +R, *R';
%cceso4
echo 2colorN8roPo:O "" Mue/tra *Q*. ;o ol9idar la/ comilla/
echo 2medida/NQO "" Mue/tra *Q
El pri!er ele!ento es el N
Ta!biIn la cla1e puede ser o!itida4
2matriM 6 arraK&R 6> *, *+ 6> +';
0rra,s 1ecorrido
-a estructura de control foreach per!ite iterar sobre arrays
Sintaxis4
)oreach &eDpre/i4nSarraK a/ 29alor'
/entencia
)oreach &eDpre/i4nSarraK a/ 2cla9e 6> 29alor'
/entencia
Ee!plos4
)oreach &2color a/ 29alor'
print TalorG 29alor<#U>,n;
)oreach &2color a/ 2cla9e 6> 29alor'
print 3la9eG 2cla9e; TalorG 29alor<#U>,n;
Salida4
TalorG *Q*
TalorG R*
TalorG +RR
3la9eG roPo; TalorG *Q*
3la9eG 9erde; TalorG R*
3la9eG aMul; TalorG +RR
0rra,s multidimensionales
$na for!a !uy practica de al!acenar datos es !ediante la
creacin de arrays !ultidi!ensionales 'tablas,6
$n array !ultidi!ensional es si!ple!ente un array en el 7ue al
!enos uno de sus 1alores es/ a su 1e&/ un array6 Ee!plo4
2co/a/ 6 arraK & 1)ruta/1 6> arraK & 1a1 6>
1naranPa1,
1.1 6>
1.anano1,
1c1 6>
1manMana1
',
1nVmero/1 6> arraK & *,
+,
E,
W,
R,
0rra,s hasta en la sopa
Te gusten o no/ si deseas usar p.p/ debers fa!iliari&arte con los
arrays6
Para recuperar datos de una base de datos/ obtienes un array6 Si
dispones un conunto de for!ularios/ las 1ariables pueden
!anearse en for!a de array@ a los autores de PHP los arrays
les encantan6
Existen algunos arrays predefinidos de alcance global por lo 7ue
pode!os acceder desde cual7uier parte de nuestro script6 $no
de ellos es UJSE9VE96
2ibliotecas de funciones
Existen !uc.as bibliotecas de funciones en PHP
%lgunos ee!plos4
Funciones de !anipulacin de cadenas
Funciones de fec.a y .ora
Funciones de arrays
Funciones de fic.eros
Funciones !ate!ticas
Funciones de bases de datos
Funciones de red
%lgunas bibliotecas re7uieren la instalacin de co!ponentes
adicionales
Todas las funciones de biblioteca estn co!entadas en la
docu!entacin de PHP

También podría gustarte