Está en la página 1de 22

INTRODUCCIN A LA PROGRAMACIN EN PHP

VERSION I
PREGUNTAS FRECUENTES SOBRE PHP
Qu es PHP?
Las siglas PHP significan Hypertext Preprocessor, en s PHP es un lenguaje
destinado en su mayora a la Web, aunque existen aplicaciones PHP que
pueden correr en consola. El PHP no es un lenguaje orientado a objetos.
Qu extensin usa?
La extensin que usa PHP es !.p"p#, ej. pagina.p"p, siendo la p$gina principal
por defecto index.p"p
Qu tipo de api!a!iones puedo "eai#a" en PHP?
PHP no tiene lmites, puedes reali%ar cualquier caso de la &ida real y adem$s
crear e implementar tus propias bibliotecas o m'todos.
Qu es una $i$iote!a?
(na biblioteca es un arc"i&o en el cual guardas &ariables u objetos que ser$n
usados en muc"as p$ginas, esto con el objeto de la reutili%acin de cdigos y
de no tener que escribir de nue&o las sentencias en p$gina.
Puedo !o%$ina" PHP !on HT&'?
), de "ec"o lo normal es dise*ar la p$gina PHP en H+,L y luego agregar las
sentencias de programacin PHP.
Puede e(e!uta" una p)*ina PHP +a!iendo do$e !i! so$"e ea i*ua ,ue
as p)*inas HT&'?
-o, PHP se ejecuta en el ser&idor Web, y no en la computadora del usuario,
por lo que para ejecutar una p$gina PHP debe estar colgada en un ser&idor o
dentro de un ser&idor local de prueba.
-&PR-&-R EN PANTA''A . USO /E 0AR-AB'ES
-%p"i%i" en pantaa. Esta p$gina que elaboraremos nos mostrar$ en pantalla la frase
Hola mundo#, la "aremos ntegramente en PHP, el cdigo sera el siguiente.
/0p"p
ec"o Hola mundo#1
02
3omo podemos &er, se utili%a echo para mostrar el texto entre comillas en pantalla,
todas las sentencias se acaban con punto y coma 415
Uso de 1a"ia$es. 6el ejemplo anterior usaremos &ariables para notar la diferencia de
cdigo.
/0p"p
7bien&enida8#Hola mundo#1
ec"o 7bien&enida1
02
3omo podemos &er, se utili%a la &ariable bien&enida que almacena el texto Hola
mundo#, notamos que todas las &ariables comien%an con signo de dlar 475, para
imprimir en pantalla ya no ponemos la &ariable entre comillas porque es la &ariable la
qu' contiene el texto.
+ambi'n pueden juntarse &arias &ariables y textos a la &e%, esto en programacin se
llama concatenar.
Con!atena" texto 2 1a"ia$es. Para concatenar textos y &ariables usaremos el
siguiente cdigo.
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
@
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
/0p"p
7nombre8#=os' Luis#1
7saludo8#Hola#1
7dia8#@AB@;B:;;C#1
ec"o 7saludo.# .7nombre.# Hoy es. .7dia.# Dracias por ingresar al sistema#1
02
Este cdigo imprimir$ en pantalla el siguiente mensaje.
Hola =os' Luis Hoy es. @AB@;B@E<C Dracias por ingresar al sistema#
3omo podemos &er la unin entre &arias &ariables y textos es el punto 4.5, tambi'n se
"ubiera podido crear la &ariable mensaje que contenga todo el texto y luego imprimirlo.
C"ea!in de 1a"ia$e de !adena !on!atenada. En el siguiente cdigo &eremos como
crear una &ariable de cadena concatenada.
/0p"p
7nombre8#=os' Luis#1
7saludo8#Hola#1
7dia8#@AB@;B:;;C#1
7mensaje87saludo.# .7nombre.# Hoy es. .7dia.# Dracias por ingresar al
sistema#1
ec"o 7mensaje1
02
Lo m$s comFn es usar este ejemplo ya que si debemos modificar el texto que se
imprimir$ en pantalla modificaremos &ariable, la cual locali%aremos r$pidamente.
O$se"1a!in3 +oda &ariable que contenga un &alor dentro de comillas dobles 4#5 o
comillas simples 4G G5 es un texto.
Los nFmeros que se almacenan en &ariables no deben lle&ar comillas o ser$n
con&ertidos a texto.
Las &ariables no deben contener caracteres distintos a los del rango HaI%J, eso excluye
a 4*#, K#, .#, , L#, etc5
/e!a"a!in de 1a"ia$es nu%"i!as3 Para crear una &ariable num'rica deberemos
seguir el siguiente ejemplo.
/0p"p
7numero8@M:N1
ec"o El nFmero ingresado es. .7numero1
02
Con!atena" n4%e"os3 Para concatenar nFmeros usaremos el mismo m'todo que con
los textos.
/0p"p
7num@8@:1
7num:8@N1
7num87num@.7num:1
ec"o )ea un nFmero abcd y ab8@:, cd8@N, entonces abcd 8#.7num1
02
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
:
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
OPERAC-ONES B5S-CAS . RE/ON/EO
Su%a3 La suma en PHP se "ace de la siguiente manera.
/0p"p
7num@8@:1
7num:8@M1
7suma87num@O7num:1
ec"o La suma de .7num@.#O#.7num:.#8#.7suma1
02
Resta3 La resta en PHP se "ace de la siguiente manera.
/0p"p
7num@8@M1
7num:8@;1
7resta87num@I7num:1
ec"o La resta de .7num@.#O#.7num:.#8#.7resta1
02
P"odu!to3 El producto en PHP se "ace de la siguiente manera.
/0p"p
7num@8@M1
7num:8@;1
7producto87num@!7num:1
ec"o El producto de .7num@.#!#.7num:.#8#.7producto1
02
Co!iente3 El cociente en PHP se "ace de la siguiente manera.
/0p"p
7num@8@M1
7num:8@;1
7cociente87num@B7num:1
ec"o El cociente de .7num@.#B#.7num:.#8#.7cociente1
02
Resto3 El resto es aquella operacin que muestra el residuo de la di&isin de :
nFmeros, se usa para determinar mFltiplos y di&isores. El resto 4P5 en PHP se "ace de
la siguiente manera.
/0p"p
7num@8@M1
7num:8@;1
7resto87num@P7num:1
ec"o El resto de .7num@.#P#.7num:.#8#.7resto1
02
Redondeo3 Para redondear se encierra el nFmero en round451
Ejemplo.
/0p"p
7num8N:Q.:NQ:NQ1
7redondeado8round47num51 //Redondeado sin decimales
7redondeado:8round47num!@;;5B@;;1 //Redondeado con 2 decimales
02
Ope"a!iones !o%$inadas3
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
N
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
Problema cotidiano @. (na persona debe determinar el numerador de una fraccin
bas$ndose en el algoritmo de la di&isin que es el siguiente.
) ( Re ) (
) (
) (
: en )), ( ). ( ( ) ( ) ( x R siduo x D
x V
x d
x D x V x R x d = = + =
, elaborar
una solucin que permita resol&er su problema sin mayor incon&eniente, se sabe que
?4x58@M, 64x58N, R4x58;.
)olucin.
/0p"p
7?8@M1
7d8N1
7R8;1
7S87RO47?!7d51 //$w es el denominador
ec"o TEl denominador es. T.7S1
02
Problema cotidiano :. (na persona recibi su estado de cuenta de su tarjeta de
cr'dito, pero quiere comprobar que la suma con aplicacin de tasas de inter's e
impuestos sean correctas, para ello sabe lo siguiente.
3ompr : botellas de Ulue de Ralp" Lauren a AC.AA dolares cada uno.
3ompr Q latas de lec"e a : soles cada una.
3ompr : cajas de corn flaVes a C.:M soles cada una.
3ompr una lata de caf' a <.Q;.
Wdem$s a mitad de mes deposit el M;P del total del mes sin incluir tasas de
inter's ni impuestos.
El impuesto es @EP del total.
El monto por mantenimiento de cuenta es de ;.CP del total con impuestos.
El recibo calcula el total con : cifras decimales.
3alcular el total a pagar a fin de mes.
)olucin.
/0p"p
7tasa6e3ambio8N.:A1
7precio@8:!AC.AA!7tasa6e3ambio1
7precio:8Q!:1
7precioN8:!C.:M1
7precioQ8<.Q1
7total)inXmpuesto87precio@O7precio:O7precioNO7precioQ1
7deposito8M;!7total)inXmpuestoB@;;1
7total)inXmpuesto87total)inXmpuestoI7deposito1
7impuesto8;.@E1
7mante3uenta8;.;;C1
7total87total)inXmpuesto!;.@E!;.;;C1
7total8round47total!@;;5B@;;1
ec"o El total a pagar es. .7total1
02
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
Q
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
ESTRUCTURAS '6G-CAS /E /EC-S-6N . 0ECTORES
'*i!a p"eposi!iona3 Wl igual qu' la lgica que lle&amos en los cursos de
filosofa o matem$tica, la programacin se &ale de sentencias lgicas como
son.
P"eposi!in S7%$oo
> 4conjuncin5 YY
Z 4disyuncin5 [[
Xgualdad 88
,enor o igual /8
,ayor o igual 28
-egacin L
6esigualdad L8
Est"u!tu"a de de!isin S- 8i9:3 Esta estructura nos permite crear condiciones de la
manera siguiente, por ejemplo s a# es igual a b# entonces, imprimir en pantalla a
igual a b#. 6eclaracin de condicin )X1
/0p"p
if4condicion5\
sentencia@1
sentencia:1
.
.
.
sentencia n1
]
02
Ejemplo@. 6eterminar si un nFmero es mFltiplo de :1
/0p"p
7num8:N1
if47numP:5\
ec"o El nFmero es mFltiplo de :#1
]
02
Ejemplo:. 6eterminar s el nFmero @ es mayor que el nFmero :1
/0p"p
7num@8@:1
7num:8@Q1
//S numero 1 no es mayor que nmero 2 no nos mostrar nada
7mensaje8TT1
//Comenzamos la condicin
if47num@27num:5\
7mensaje8T-Fmero @ es mayor que nFmero :T1
]
02
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
M
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
Est"u!tu"a de de!isin S-;S-NO 8i9;ese:3 La estructura de decisin )XB)X-Z es m$s
completa ya que nos permite procesar informacin tanto si la condicin es falsa como
si es &erdadera. )e declara de la siguiente manera.
/0p"p
if4condicion5\
sentencia@ .
.
sentencia n
]
else\
sentencia@
.
sentencia n
]
02
Ejemplo@. Elaborar una solucin que permita determinar si un nFmero es mFltiplo de
otro.
/0p"p
7num@8@M1
7num:8N1
7mensaje8TT1
if47num@P7num:88;5\
7mensaje87num@.T es mFltiplo de T.7num:1
]
else\
7mensaje87num@.T no es mFltiplo de T.7num:1
]
ec"o 7mensaje1
02
Ejemplo:. Elaborar una solucin que permita calcular el promedio de N notas y
determinar si aprob o no. 4Wprobado en a%ul y desaprobado en rojo5
/0p"p
7n@8@M1
7n:8N1
7nN8@;1
7prom847n@O7n:O7nN5BN1
7mensaje8TT1
if47prom2@;5\
7mensaje8T/font color8blue2Wprobado/Bfont2T1
]
else\
7mensaje8T/font color8red26esaprobado/Bfont2T1
]
ec"o 7mensaje1
02
O$se"1a!in3 Puede usarse cdigo H+,L dentro de PHP, pero como &emos los
atributos no deben ir entre comillas.
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
A
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
EjemploN. 6eterminar si un a*o es bisiesto y dependiendo de eso mostrar el nFmero
de das del a*o.
/0p"p
7ano8:;;C1
7mensaje8TT1
if47anoPQ88;5\
7mensaje8TNAA das I UisiestoT1
]
else\
7mensaje8TNAM das I -o bisiestoT1
]
ec"o 7mensaje1
02
S-;S-NO Anidados3 Las estructuras )XB)X-Z anidados sir&en para crear condiciones
dentro de otras condiciones. La estructura es la siguiente.
/0p"p
if4condicion5\
if4condicion5\
sentencia
]
else\
if4condicion5\
sentencia
]
else\
sentencia
]
]
]
else\
if4condicion5\
sentencia
]
else\
if4condicion5\
sentencia
]
else\
sentencia
]
]
]
02
Ejemplo@. Hallar el $rea de un cuadrado de base @M, si el $rea es menor que @;, pero
mayor M entonces indicar que el cuadrado es peque*o, si el $rea es igual a C mostrar
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
C
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
el cuadrado es peque*o de $rea C1 si el $rea es mayor o igual que @; pero menor que
N; mostrar un mensaje que diga el cuadrado es peque*o, de lo contrario, si es mayor
o igual que N; mostrar el mensaje que diga el cuadrado es grande.
O$se"1a!in3 )abemos que el $rea del cuadrado es
2
l , por lo que usaremos un
mtodo de la clase matemtica importante en PHP, este m'todo se llama poS#, y se
declara de la siguiente manera, sea.
b
a x = , entonces 7x8poS4a, b51
)olucin.
/0p"p
7base8@M1
7area8poS47base,:51 BB(samos el m'todo poS
if47area/@;YY7area2M5\
7mensaje8TEl cuadrado es peque*oT1
if47area88C5\
7mensaje8TEl cuadrado es peque*o de $rea CT1
]
]
else\
if47area/N;5\
7mensaje8TEl cuadrado es medianoT1
]
else\
7mensaje8TEl cuadrado es grandeT1
]
]
02
Ejemplo:. 6e N nFmeros "allar los nFmeros en orden ascendente
/0p"p
7a8@:1
7b8@:1
7c8@Q1
7mayor8;1
7menor8;1
7intermedio8;1
if47a/7b5\
7mayor87a1
if47b27c5\
7intermedio87b1
7menor87c
]
else\
7intermedio87c1
7menor87b1
]
]
else\
if47b27c5\
7mayor87b1
if47a27c5\
7intermedio87a1
7menor87c1
]
else\
7intermedio87c1
7menor87c1
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
<
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
]
]
else\
7mayor87c1
if47a27b5\
7intermedio87a1
7menor87b1
]
else\
7intermedio87b1
7menor87a1
]
]
]
ec"o 7mayor.T^nT.7intermedio.T^nT.7menor1
02
/e!isin !on !asos CA&B-AR 8s<it!+:3 Esto se usa para no elaborar &arias
condiciones, para ello se usa el siguiente cdigo.
/0p"p
7opcion8num1
sSitc"47opcion5\
case @. sentencias
breaV1
case :. sentencias
breaV1
case n. sentencias
breaV1
]
02
Problema cotidiano @. (n estudiante de ingeniera debe elaborar una calculadora que
le permita calcular suma, resta, di&isin, producto y potencia de : nFmeros. 4(sar
)Sitc"5
/0p"p
7num@8@:1
7num:8@Q1
7opcion8@1
ec"o T)eleccione la opcin a calcular H@J)uma H:JResta HNJ3ociente HQJProducto
HMJPotenciaT1
sSitc"47opcion5\
case @.
7operacion87num@O7num:1
breaV1
case :.
7operacion87num@I7num1
breaV1
case N.
7operacion87num@B7num1
breaV1
case Q.
7operacion87num@!7num:1
breaV1
case M.
7operacion8poS47num@,7num:51
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
E
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
breaV1
]
ec"o 7operacion1
02
Repeti!in !on de!isin &-ENTRAS 8<+ie:3 La estructura de repeticin ,XE-+RW)
se usa para repetir sentencias muc"as &eces "asta que la condicin lgica deje de
cumplirse.
Ejemplo@. )olucin que cuenta del @ al :;.
/0p"p
7i8;1
S"ile47i/8:;5\ BB,ientras 7i sea menor o igual que :;, "acer \
7iOO1 BB7i es un acumulador, que aumenta de uno en uno a medida que se &a
repitiendo la aplicacin.
ec"o 7i.T/Bbr2T1
]
02
Ejemplo:. 6esarrollar una solucin que permita mostrar una progresin aritm'tica con
ra%n :, que comien%a desde ; y termina en E;;;.
/0p"p
7i8;1
S"ile47i/8E;;;5\
if47iP:88;5\
ec"o 7i1
ec"o T/Bbr2T1
]
7iOO1
]
ec"o 7acumulador1
02
Repeti!in !on /ES/E HASTA 89o":3 Es la m$s Ftil de todas, declara, condiciona y
aumenta el contador en un solo proceso.
/0p"p
for47i8;1 7i/num1 7iOO5\
sentencias1
]
02
Ejemplo @. Xmprima los nFmeros mFltiplos de : desde ; "asta EEEE.
/0p"p
for47i8;1 7i/EEEE1 7iOO5\
if47iP:88;5\
ec"o 7i1
ec"o T/Bbr2T1
]
]
02
0e!to"es3 (n &ector es un arreglo de una sola &ariable que almacena n datos, adem$s
es de naturale%a &ol$til, lo que significa que al cerrarse la aplicacin PHP o entrar a
otro enlace todo lo almacenado en dic"o &ector ser$ borrado.
(n &ector se puede declarar de : maneras.
7&ectorHlongitudJ1
7&ector8\elementos]1
Ejemplo@. ,odificacin del ejemplo anterior mostrando datos almacenados en &ector.
/0p"p
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
@;
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
7i8;1 7j8;1
7&ectorH@;;;;J1
BBX-DRE)W,Z) 6W+Z) WL ?E3+ZR
S"ile47i/8E;;;5\
if47iP:88;5\
if47iL8;5\
7&ectorH7iJ87i1
]
else\
7&ectorH7iI@J87i1
]
]
7iOO1
]
BBRE3ZRRE,Z) EL ?E3+ZR
S"ile47j/7i5\
ec"o 7&ectorH7jJ1
ec"o T/Bbr2T1
7jOO1
]
02
Ejemplo :. )uma de todos los nFmeros mFltiplos de : mayores que :; pero menores
que @;,;;;.
/0p"p
BB3Z,E-_W,Z) 6E)6E :@ PZR )ER LZ) -(,ERZ ,W>ZRE) `(E :;
7i8:@1 7num8;1 7conta8;1 7suma8;1 7num:8; 17&ectorH@;;;;I:@J1
S"ile47i/8@;;;;5\
if47iP:88;5\
7&ectorH7num:J87i1
7contaOO1
]
7iOO1
7num:OO.
]
BBRE3ZRRE,Z) EL ?E3+ZR
S"ile47num/7conta5\
BBO8 es lo mismo que decir &ariable8&ariableO&alor
7sumaO87&ectorH7numJ1
7numOO1
]
ec"o TLa suma es.TO7suma1
02
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
@@
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
-NTEGRAC-6N PHP CON HT&'
&ane(o de 9o"%ua"ios3 El PHP se &ale de los formularios en H+,L para su
correcta ejecucin, es as que PHP obtiene los datos a trabajar &ali'ndose de
las &ariables de tipo 7aPZ)+HG&ariablebJ y 7aDE+HG&ariablebJ.
7aPZ)+. +ambi'n conocida como &ariable de formulario. Este tipo de
&ariables se utili%an s y solo s obtenemos informacin de un formulario
H+,L que procesa la informacin mediante el m'todo PZ)+.
Xmaginemos que en un formulario tenemos un campo de texto llamado
nombres, entonces, al "acer clic en en&iar el script PHP debe procesar
el nombre y mostrarlo.
En el documento prueba.p"p copiamos lo siguiente, dentro del
body.
/form id8Tform@T name8Tform@T met"od8TpostT action8TT2
/input name8TnombresT type8TtextT id8TnombresT B2
/input type8TsubmitT name8T)ubmitT &alue8TEn&iarT B2
/Bform2
/0p"p
BB-(LL representa &acio
if47aPZ)+HcnombrescJL8-(LL5\
ec"o THola T.7aPZ)+HcnombrescJ1
]
02
7aDE+. +ambi'n conocida como &ariable (RL. Este tipo de &ariables se
utili%an s y solo s obtenemos informacin de un formulario H+,L que
procesa la informacin mediante el m'todo DE+. Xmaginemos que en un
formulario tenemos un campo de texto llamado nombres, entonces, al
"acer clic en en&iar el script PHP debe procesar el nombre y mostrarlo.
En el documento prueba.p"p copiamos lo siguiente, dentro del
body.
/form id8Tform@T name8Tform@T met"od8TpostT action8TT2
/input name8TnombresT type8TtextT id8TnombresT B2
/input type8TsubmitT name8T)ubmitT &alue8TEn&iarT B2
/Bform2
/0p"p
BB-(LL representa &acio
if47aDE+HcnombrescJL8-(LL5\
ec"o THola T.7a DE+HcnombrescJ1
]
02
Cu) es a di9e"en!ia ent"e a%$os?3 La diferencia es que el m'todo PZ)+
oculta los datos en&iados 4el proceso no es &isto por el usuario5, y el m'todo
DE+, muestra los datos en&iados en la barra de url, ejemplo.
"ttp.BBdireccion.comBpagina.p"p0usuario8joseYpassSord8micla&eYnombre8joseP:;luis
El m'todo PZ)+ solo se llama desde un formulario, mientras que el m'todo
DE+ puede ser llamado desde cualquier parte de la p$gina, incluso un enlace.
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
@:
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
dP"u$ate=
@. 6ar una solucin al siguiente problema de la &ida real. una empresa tiene una
cantidad n de trabajadores, cada uno de ellos recibe un sueldo correspondiente
a su categora, existen N categoras.
3ategora @ )B.@:;;
3ategora : )B.@ME<.:N
3ategora N )B.:NEN.:N
Wdem$s se descuenta el @CP del total del sueldo por categora a cada
trabajador, y si el mes ingresado es julio o diciembre entonces aumentar el
@;;P del total del sueldo contando el descuento. )e debe calcular adem$s el
total pagado a la categora @, a la : y a la N, determinar el porcentaje de
trabajadores de cada categora y el total pagado a todos los trabajadores de la
empresa.
Wlmacenar datos en &ector.
2. 6ar una solucin al siguiente problema de la &ida real. )e debe crear un
calendario en PHP para el mes de febrero, considerar si el a*o es o no
bisiesto, dar la solucin a ese problema.
N. 6ar una solucin al siguiente problema de la &ida real. 3rear un menF
desplegable que contenga los a*os desde el @E@; "asta el :;;C, incluyendo
las etiquetas y &alores correspondientes.
4. 6ar una solucin al siguiente problema de la &ida real. Hacer un programa que
calcule el monto a pagar por la compra de n# productos. `ue calcule tambi'n
el XD? 4@EP5 correspondiente y el monto total a pagar 4incluido el XD?5.
3onsidere.
- Los productos que cuestan m$s de )B. M; tienen @;P de descuento.
- )i la cantidad de productos comprados es mayor a @;, que se "aga un
descuento de :P sobre el total a pagar 4antes de aplicarle el XD?5.
- )i la cantidad de productos es menor o igual a M que muestre un
mensaje de en&o a 3aja R$pida.
- )i el precio de un producto es ; que en&e el mensaje Producto
Dratis#, y que no permita m$s de N productos gratis.
- `ue al terminar la operacin pregunte por la modalidad de pago, con
tarjeta o en efecti&o1 en caso de usar tarjeta que aplique un recargo del
@;P sobre el total 4incluido el XD?5.
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
@N
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
&ANE>O /E &?TO/OS . FUNC-ONES
0a"ia$es *o$aes3 )on todas aquellas declaradas fuera de los m'todos y que
pueden ser ledas por todos los m'todos.
0a"ia$es o!aes3 )on todas aquellas declaradas dentro de los m'todos y solo son
&$lidas en los m'todos en los que fueron declarados.
&todos ,ue no "e!i$en ni "eto"nan 1ao"3 Estos m'todos son usados
frecuentemente para trabajar con &ariable globales, o simplemente para ser
ejecutados en el momento en que son llamados.
/0p"p
function nombreeuncion45\
sintaxis1
]
02
&todos ,ue "e!i$en pe"o "eto"nan 1ao"3 Estos m'todos son usados
frecuentemente para trabajar entre m'todos y mostrar un resultado en el instante en
que es llamado.
/0p"p
function nombreeuncion47&ariable@, 7&ariable:, ...., 7&ariable-5\
7suma87&ariable@ O 7&ariable:O....O7&ariable-1
]
02
&todos ,ue no "e!i$en pe"o "eto"nan 1ao"3 Estos m'todos son usados para que
una operacin creada dentro del m'todo sea guardada o mostrada fuera del m'todo
/0p"p
function nombreeuncion45\
return 7&ariable1
]
02
&todos ,ue "e!i$en 2 "eto"nan 1ao"3 Estos m'todos son los m$s usados por los
programadores, se usan frecuentemente para reutili%acin de cdigo.
/0p"p
function nombreeuncion47&ariable@, 7&ariable:, ...., 7&ariable-5\
return 7suma87&ariable@ O 7&ariable:O....O7&ariable-1
]
02
'a%ado de %todos3 Para que un m'todo se ejecute debe ser llamado indicando el
nombre del m'todo. nombreeuncion451
Ejemplo @. 3rear un m'todo que calcule la suma de : nFmeros 4n@ y n:5 recibidos de
un formulario los cuales son &ariables globales.
/0p"p
7n@87aDE+Hcn@cJ1
7n:87aDE+Hcn:cJ1
function suma45\
ec"o 7n@On:1
]
suma451
02
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
@Q
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
Ejemplo :. Xmplemente el m'todo anterior pero procurando que el m'todo retorne
&alor.
/0p"p
7n@87aDE+Hcn@cJ1
7n:87aDE+Hcn:cJ1
function suma45\
7n@On:1
]
ec"o suma451
02
Ejemplo N. Xmplemente el m'todo anterior pero desde Q m'todos, dos que almacenen
los nFmeros, otro que los sume y otro que muestre la suma.
/0p"p
BB&ariables
function -@45\
return 7aDE+Hcn@cJ1
]
function -:45\
return 7aDE+Hcn:cJ1
]
BBmetodo que recibe datos y los suma
function suma47n@, 7n:5\
return 7n@On:1
]
BBmetodo que recibe la suma y la muestra
function mostrar45\
ec"o suma4-@45, -:4551
]
BBllamada al m'todo
mostrar451
02
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
@M
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
COO@-ESA SES-ONESA . &ANE>O /E HORAS .
FECHAS
CooBies3 eragmento de informacin que se almacena en el ordenador del usuario que
accede a un sitio Web.
Sesin3 Xnformacin que se almacena en el ser&idor de manera temporal, "asta que el
usuario decida destruir la sesin, se utili%a normalmente para el manejo de login de
usuarios.
/0p"p
BB)e declara una cooVie
setcooVie4string nombre, string &alor, int fec"a, string pat", string dominio, int segura51
BB)e lee una cooVie
7acooVieHcnombrecJ1
7"ttpacooViea&arsHcnombrecJ1
02
Ejemplo @. 3reamos una cooVie que expire el @ de Enero del :;@; a las ;.;.; "oras.
/0p"p
7fec"a8mVtime4;,;,;,@,@,:;@;51
setcooVie4cmicooViec,7&alor,7fec"a,c c,c c,;51
B!W"ora &isuali%amos los campos!B
ec"o 7micooVie1
ec"o 7"ttpacooViea&arsHcmicooViecJ1
02
Las 3ooVies tienen una serie de campos, como mnimo se en&a el nombre y el &alor
de la cooVie. Ztros campos de las cooVies son.
Fe!+a3 las cooVies pueden tener una fec"a de expiracin. Hay que destacar
que esta fec"a es un nFmero entero, por lo que "abr$ que calcularla con las
funciones mVtime45 y time45 de PHP.
Pat+3 especifica el subconjunto de (RLs en el ser&idor de origen para las
cuales se aplica la cooVie.
/o%inio3 establece el dominio en el cual es &$lida la cooVie.
Se*u"a3 indica si la cooVie necesita una conexin segura, toma &alores
enteros, si no queremos especificar nada, poner a cero.
6eber$s tener en cuenta que muc"os de los na&egadores no aceptan el uso de
cooVies por medidas de seguridad por lo que se deber$n tomar medidas de acceso y
funcionalidad del sistema para que soporte medios alternati&os.
Para el caso de las sesiones.
)e iniciali%a.
sessionastart451
BBEsto debe ir antes que cualquier otra lnea de cdigo o nos mostrar$ error.
)e declara.
7a)E))XZ-HGnombrebJ 8 &alor1
)e lee.
7a)E))XZ-HGnombrebJ1
)e destruye la sesin.
destroyasession451
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
@A
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
Ejemplo :. 6esarrolle un cdigo que almacene en una &ariable de sesin el nombre de
un usuario ingresado por un formulario mediante el m'todo PZ)+.
/0p"p
sessionastart451
if4isset47aPZ)+HGnombrebJ55
\
7a)E))XZ-HGnom(suariobJ 8 7aPZ)+HGnombrebJ1
]
BBLeer en cualquier p$gina del sitio
ec"o 7a)E))XZ-HGnom(suariobJ1
02
Fe!+as 2 +o"as3 )on necesarias para el manejo de e&entos, y nos dan muc"as
opciones como timestamp y dateC
/0p"p
BB6eclaracin y lectura funcin date.
date4dImI>#51
BBesto nos mostrar$ daImesIa*o4>>>>5
time45
BBesto nos mostrar$ diamesa*o"oraminseg
B!Para "oras "acemos lo mismo, usamos la funcin date, pero esta &e% con la
siguiente &ariacin.!B
date4".i.s#51
BBesto mostrar$ "ora.minuto.segundo
02
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
@C
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
C'ASES
)on declaraciones o abstracciones de objetos, aunque en PHP no son muy usadas ni
difundidas, existen &ariedad de opciones para el manejo de las mismas as como
accesibilidad en la declaracin y uso.
Para iniciar una clase debemos indicar lo siguiente.
class nom3lase
\
&ariables globales si es que "ubieran
f.
metodo@45\
]
]
Para declarar &ariables globales "aremos lo siguiente.
class nom3lase
\
&ar 7nom?ariable1
public 7nom?ariable@1
pri&ate 7nom?ariable:1
metodo@45\
]
]
0a"3 define una &ariable como default.
Pu$i!3 define una &ariable como publica, lo que significa que puede ser ace%ada
fuera de la clase.
P"i1ate3 define una &ariable como pri&ada, lo que significa que no puede ser ace%ada
fuera de la clase.
Para usar un m'todo constructor.
class nom3lase
\
&ar 7nom?ariable1
public 7nom?ariable@1
pri&ate 7nom?ariable:1
public function aaconstruct47param@, 7param:5\
contenido
]
]
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
@<
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
Para darle &alores a las &ariables globales desde el m'todo constructor.
class nom3lase
\
&ar 7a1
public 7b1
pri&ate 7c1
public function aaconstruct47a, 7b, 7c5\
7t"isI2a 8 7a1
7t"isI2b 8 7b1
7t"isI2c 8 7c1
]
]
(samos 7t"isI2 para indicar que esa es la &ariable global y no la que recibe como
par$metro el m'todo constructor.
W"ora a*adiremos algunos m'todos.
/0p"p
class nom3lase
\
&ar 7a1
public 7b1
pri&ate 7c1

public function aaconstruct47a, 7b, 7c5
\
7t"isI2a 8 a1
7t"isI2b 8 b1
7t"isI2c 8 c1
]

BBcomo c es pri&ada creamos sus metodos DE+ y )E+ para poder trabajarla fuera
de la clase
public function get345
\
return 7t"isI2c1
]
public function set347c5
\
7t"isI2c 8 7c1
]

BBde&uel&e la suma de a O b O c
public function sumaWU345
\
return 7t"isI2a O 7t"isI2b O 7t"isI2c1
]
]
02
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
@E
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
Ejemplo @. 6esarrollo de clase conexin
class 3onexion
\
&ar 7ser&idor1
&ar 7usuario1
&ar 7passSord1
&ar 7bdatos1
&ar 7conexion1
public function aaconstruct47)er&idor, 7(suario, 7PassSord, 7Udatos5
\
7t"isI2ser&idor 8 7)er&idor1
7t"isI2usuario 8 7(suario1
7t"isI2passSord 8 7PassSord1
7t"isI2bdatos 8 7Udatos1
7t"isI2conexion 8 gmysqlaconnect47t"isI2ser&idor, 7t"isI2usuario,
7t"isI2passSord5 or die4TERRZR C;@ I3Z-)+R(3+ZRI Error de conexin,
parametros incorrectosT51
]
public function mostrar47sentencia5
\
gmysqlaselectadb47t"isI2bdatos, 7t"isI2conexion5 or die4TERRZR C;:
I,Z)+RWRI -o se pudo seleccionar la base de datosT51
7consulta 8 gmysqlaquery47sentencia, 7t"isI2conexion5 or
die4TERRZR C;N I,Z)+RWRI -o se puede reali%ar la consultaT51
7consulta,Wh 8 mysqlanumafields47consulta51
7S 8 ;1
for47i 8 ;1 7i / 7consulta,Wh1 7iOO5
\
7camposH7iJ 8 mysqlafieldaname 47consulta, 7i51
]
S"ile 47roS 8 mysqlafetc"aarray47consulta55
\
for47j 8 ;1 7j / 7consulta,Wh1 7jOO5
\
7datosH7SJH7camposH7jJJ 8 7roSH7camposH7jJJ1
]
7SOO1
]
mysqlafreearesult47consulta51
return 7datos1
]
public function insertar47tabla, 7campos, 7&alores5
\
gmysqlaselectadb47t"isI2bdatos, 7t"isI2conexion5 or die4TERRZR C;:
IX-)ER+WRI -o se pudo seleccionar la base de datosT51
7consulta 8 gmysqlaquery4T)ELE3+ ! eRZ, T.7tabla, 7t"isI2conexion5
or die4TERRZR C;N IX-)ER+WR4@5I -o se puede reali%ar la consultaT51
7sentencia 8 TX-)ER+ X-+Z T.7tabla.T4T.7campos.T5 ?WL(E)
4T.7&alores.T5T1
7consulta 8 gmysqlaquery47sentencia, 7t"isI2conexion5 or
die4TERRZR C;N IX-)ER+WR4:5I -o se puede reali%ar la consultaT51
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
:;
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
return true1
]
public function eliminar47tabla, 7condicion5
\
gmysqlaselectadb47t"isI2bdatos, 7t"isI2conexion5 or die4TERRZR C;:
IELX,X-WRI -o se pudo seleccionar la base de datosT51
7consulta 8 gmysqlaquery4T6ELE+E T.7tabla. TWHERE T.7condicion,
7t"isI2conexion5 or die4TERRZR C;N IELX,X-WRI -o se puede reali%ar
la consultaT51
return true1
]
public function sentencia47sentencia5
\
gmysqlaselectadb47t"isI2bdatos, 7t"isI2conexion5 or die4TERRZR C;:
I)E-+E-3XWI -o se pudo seleccionar la base de datosT51
7consulta 8 gmysqlaquery47sentencia, 7t"isI2conexion5 or
die4TERRZR C;N I)E-+E-3XWI -o se puede reali%ar la consultaT51
if47consultaL8-(LL YY 7consultaL8false5
\
return true1
]
return false1
]
public function mantenimiento45
\
gmysqlaselectadb47t"isI2bdatos, 7t"isI2conexion5 or die4TERRZR C;:
I,W-+E-X,XE-+ZI -o se pudo seleccionar la base de datosT51
7consulta 8 mysqlalistatables47t"isI2bdatos51
7numaroSs 8 mysqlanumaroSs47consulta51
for 47i 8 ;1 7i / 7numaroSs1 7iOO5
\
gmysqlaquery4TZP+X,X_E +WULE
T.mysqlatablename47consulta, 7i551
gmysqlaquery4TREPWXR +WULE T.mysqlatablename47consulta,
7i551
]
mysqlafreearesult47consulta51
return true1
]
]
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
:@
INTRODUCCIN A LA PROGRAMACIN EN PHP
VERSION I
OB>ETOS
Representacin detallada y particular de algo de la realidad, si bien es cierto PHP no
est$ orientado a objetos, sin embargo esto no significa que no se pueda trabajar con
ellos, en estas Fltimas &ersiones se "an ido adaptando y agregando muc"as opciones
que "acen que PHP sea un potente lenguaje de programacin.
Para declarar e iniciali%ar un objeto en PHP se "ace lo siguiente.
7nomZbjeto 8 neS nom3lase451
3on esto "abremos iniciali%ado y declarado el objeto 7nomZbjeto, a"ora si la clase
nom3lase requiere el en&io de par$metros a tra&'s del m'todo constructor "ar'mos lo
siguiente.
7nomZbjeto 8 neS nom3lase47&ar@, 7&ar:51
Para poder acceder a los m'todos de la clase nom3lase a tra&'s del objeto "aremos
lo siguiente.
7nomZbjetoI2nom,'todo47&ar@, 7&ar:51
Para poder acceder a las &ariables permitidas de la clase nom3lase el proceso es el
mismo.
7nomZbjetoI2nom?ariable1
Ejemplo @. 3rear un objeto de la clase conexin mostrada anteriormente y en&iar los
par$metros de conexin, a su &e% acceder al m'todo de mantenimiento.
/0p"p
7usuario 8 root#1
7passSord 8 @:NQ#1
7ser&idor 8 local"ost#1
7bdatos 8 pruebas#1
7ob 8 neS 3onexion47ser&idor, 7usuario, 7passSord, 7bdatos51
7mantenimiento 8 7obI2mantenimiento451
if47mantenimiento5
ec"o Tmantenimiento oVT1
else
ec"o TerrorT1
02
Ejemplo :. Wcceder al m'todo mostrar de la clase conexin y almacenar los resultados
en el &ector 7datos, sabiendo que la sentencia de consulta es )ELE3+ ! eRZ,
examenes ZR6ER U> idaexamen W)3#
/0p"p
7usuario 8 root#1
7passSord 8 @:NQ#1
7ser&idor 8 local"ost#1
7bdatos 8 pruebas#1
7ob 8 neS 3onexion47ser&idor, 7usuario, 7passSord, 7bdatos51
7datos 8 7obI2mostrar4T)ELE3+ ! eRZ, examenes ZR6ER U> idaexamen
W)3T, TerrorT51
02
9 :;;< =os' Luis >apur ?allejos. +odos los derec"os reser&ados
::

También podría gustarte