Está en la página 1de 13

PHP (Hypertext Preprocesador)

PHP es un lenguaje de alto nivel que se ejecuta en el servidor; donde estn alojadas las
pginas, al contrario de otros lenguajes que son ejecutados en el navegador.
Php es un lenguaje que se presenta embebido dentro de las pginas web. Esto quiere
decir que el cdigo se incrusta en el mismo documento en el que aparecen las etiquetas
HTML. Al ejecutarse un programa escrito en este lenguaje, se obtiene una pgina
HTML compuesta por una parte de las etiquetas originales y por otra generadas
dinmicamente por el cdigo PHP.
La principal ventaja de PHP, es que al ejecutarse en el servidor, todas nuestras pginas
van a poder ser vistas en cualquier ordenador, independientemente del ordenador que se
tenga. A diferencia del cdigo que se ejecuta en el navegador, que muchos navegadores
no son capaces de entender todo el cdigo, lo que presentara errores al mostrar el
resultado de las pginas.
Otra ventaja que presenta PHP, es que es un lenguaje de programacin gratuito y, por
tanto, todo el mundo puede utilizarlo sin ningn costo, frente a otros lenguajes cuyo
software es necesario comprar para su utilizacin.
Cdigo de fuente abierto: toda persona puede mejorar o hacer sugerencias de su
desarrollo
Portable y multiplataforma: el lenguaje PHP pude ser ejecutado en cualquier plataforma
sin necesidad de modificar una lnea de cdigo
Permite realizar rpidamente sitios web dinmicos; alta velocidad de desarrollo
PHP se construy para ser utilizado conjuntamente con la base de datos MySQL, pero
actualmente soporta la mayora de bases de datos (Oracle, Informix, ODBC, SQl
Server, etc.).
DIFERENCIA DE EJECUCIN ENTRE UN DOCUMENTO ESTTICO Y UN
DOCUMENTO DINMICO

FASE DE LA OBTENCIN DE UN DOCUMENTO DINMICO




1. El usuario pulsa sobre un enlace, solicitando un documento (HTML,JPG,) y el
navegador enva la peticin al servidor utilizando el protocolo http
2. La solicitud llega al servidor web correspondiente a travs de la red. El servidor
localiza el documento solicitado
3. El servidor lee el documento del sistema, de fichero y enva al cliente que
realiz la peticin una copia exacta del mismo
4. El documento llega al cliente y se visualiza su contenido en el navegador.

SERVIDOR
WWW
DOCUMENTO
ESTTICO
(HTML,JPG)
SOLICITUD
RESPUESTA
3
1
4
2
FASE DE LA OBTENCIN DE UN DOCUMENTO DINMICO



1. El usuario pulsa sobre un enlace, solicitando un documento (PHP) y el
navegador enva la peticin al servidor utilizando el protocolo http
2. Llega la solicitud al servidor correspondiente y este localiza el documento. Por
la extensin del fichero(.PHP) determina que se trata de un fichero que contiene
PHP y lanza el interprete
3. El interprete ejecuta el script solicitado, generando un resultado (Habitualmente
un documento HTML) que se devuelve al servidor para que este a su vez lo
transfiera al cliente que hizo la peticin
4. Se visualiza el Doc. Generado dinmicamente en el navegador del usuario.

PAQUETES INTEGRADOS
Son kits de instalacin automtica que nos simplifican todas las tareas de instalacin de
los diferente software a partir de un solo ejecutable; algunos de ellos son:
Xampp:http://www.apachefriends.org/en/xampp.html/
Foxserver:http://sourceforget.net/projects/foxserv
Apache2triad:http://apache2triad.sourceforge.net
Wamp5:http://www.en.wampserver.com/download.php/
Winlamp:http://www.datacaptech.com/winlamp.php
Appserv:http://www.appservnetwork.com/
Nushpere:http://nusphere.com7
SERVIDOR
WWW
DOCUENTO
ESTTICO
(HTML,JPG)
SOLICITUD
RESPUESTA
3
1
4
2

PHP
Delimitadores
PHP esta muy relacionado con el lenguaje de hipertexto HTML; tanto as que el cdigo
PHP aparece normalmente insertado dentro de un documento HTML
Las etiquetas de comienzo y final del cdigo PHP son:
a) <?php
instrucciones
>

b) <? En el php.ini debe estar activa
instrucciones la directiva short_open_tag

>

c) <% En el php.ini debe estar activa la
instrucciones directiva aspt_tags; utilizada por ASP
%> Active Server Pages

d) <script lenguaje=php>

instrucciones Se debe indicar el lenguaje que se va
ha utilizar
</script>


Comentarios

// (C,C++,Java, JavaScript), #(Perl, Shell) comentarios de una sola lnea
/* comentarios */ comentarios de varias lneas

Fin de lnea
Php ignora cualquier carcter de espaciado presente en el cdigo (espacios en blanco,
tabulaciones, saltos de lneas, excepto si se encuentra en una cadena de texto).
El fin de sentencia se marca ; o bien aprovechando la etiqueta de cierre ?>

Variables
Es el nombre que se le da a una posicin de memoria del ordenador en la cual se
almacena la informacin, en php no es necesario declarar las variables antes de su
utilizacin; se crean al instante, no tienen asociado el tipo de dato, puede almacenar
diferentes tipos de datos


El tipo de variable no se suele especificar. Se decide en tiempo de ejecucin en funcin
del contexto y puede variar

EXPRESIONES Y OPERADORES

Operadores aritmticos
+ suma
- resta
* producto
/ divisin
% resto
++ incremento (si se coloca antes de la variable es un preincremento,
despus de la variable postincremento)
-- decremento(si se coloca antes de la variable es un predecremento,
despus de la variable postdecremento)


Operadores de cadena
. concatenacin

Operadores de asignacin
=
Operadores de asignacin combinado

+=
-=
*=
/=
%=
.=

Ejemplo:
1. Si se tiene la siguiente variable $a=3
Entonces:
$a+=5 $a=$a+5 $a=8
$a-=5 $a=$a-5 $a=-2
$a*=5 $a=$a*5 $a=15
$a/=5 $a=$a/5 $a=0.6
$a%=5 $a=$a%5 $a=0


2. si se tiene $a=hola
$a.=mundo $a=$a . mundo $a=hola mundo

Operadores de comparacin

= = $a= =$b True si los valores son iguales

= = = $a= = = $b True si los variable son iguales y
del mismo tipo

!= $a != $b True si son diferentes

!= = $a != = $b True si los variable no son iguales y
del mismo tipo

< $a < $b True si $a es menor $b
> $a >$b True si $a es mayor $b
<= $a <= $b True si $a es menor o igual $b
>= $a >= $b True si $a es mayor o igual $b


Operadores Lgicos

and && $a and $b True si lo son $a y $b
$a && $b

or || $a or $b True si lo son $a o $b
$a || $b

xor $a xor $b True si $a o$b lo son pero no ambos a la vez

! !$a True si $a es falso o false si $a es verdadero (negacin)


INSTRUCCIONES DE CONTROL EN PHP

Condicionales
Las sentencias condicionales nos permiten ejecutar o no unas ciertas instrucciones
dependiendo del resultado de evaluar una condicin. Las ms frecuentes son la
instruccin if y la instruccin switch.

Sentencia if ... else
<?php
if (condicin)
{
Sentencias a ejecutar cuando la
condicin es cierta.
}
else
{
Sentecias a ejecutar cuando la
condicin es falsa.
}
?>
La sentencia if ejecuta una serie de instrucciones dependiendo de la condicin.

<html>
<head>
<title>uso de la sentencia if</title>
</head>
<body>
<?php
$a = 8;
$b = 3;
if ($a < $b)
{
echo "a es menor que b";
}
else
{
echo "a no es menor que b";
}
?>
</body>
</html>

Con la sentencia switch podemos ejecutar unas u otras instrucciones dependiendo del
valor de una variable, en el siguiente ejemplo, dependiendo del valor de la variable
$posicion se ejecuta el bloque 1 cuando el valor es "arriba", el bloque 2 cuando el valor
es "abajo" y el bloque 3 si no es ninguno de los valores anteriores.


Sentencia switch ... case

<html>
<head>
<title>Uso de la estructura switch</title>
</head>
<body>
<?php
$posicion = "arriba";

switch($posicion) {
case "arriba": // Bloque 1
echo "La variable contiene";
echo " el valor arriba";
break;
case "abajo": // Bloque 2
echo "La variable contiene";
echo " el valor abajo";
break;
default: // Bloque 3
echo "La variable contiene otro valor";
echo " distinto de arriba y abajo";
}
?>
</body>
</html>

Ciclos iterativos o bucles
Los bucles nos permiten iterar conjuntos de instrucciones, es decir repetir la ejecucin
de un conjunto de instrucciones mientras se cumpla una condicin. Los ciclos iterativos
en PHP son while y for

Sentencia while

<?php
while (condicin)
{
intrucciones a ejecutar.
}
?>

Mientras la condicin sea cierta se reiterar la ejecucin de las instrucciones que estn
dentro del while.
En el siguiente ejemplo, el valor de $i al comienzo es 0, durante la ejecucin del bucle,
se va sumando 1 al valor de $i de manera que cuando $i vale 10 ya no se cumple la
condicin y se termina la ejecucin del bucle.

<html>
<head>
<title>uso de la sentencia while</title>
</head>
<body>
<?php
$i=0;
while ($i<10)
{
echo "El valor de i es ", $i,"<br>";
$i++;
}
?>
</body>
</html>

La instruccin for es la instruccin de bucles ms completa. En una sola instruccin nos
permite controlar todo el funcionamiento del bucle.
El primer parmetro del for, es ejecutado la primera vez y sirve para inicializar la
variable del bucle, el segundo parmetro indica la condicin que se debe cumplir para
que el bucle siga ejecutndose y el tercer parmetro es una instruccin que se ejecuta al
final de cada iteracin y sirve para modificar el valor de la variable de iteracin.

Sentencia for

<?php
for (inicial ; condicin ; ejecutar en iteracin)
{
intrucciones a ejecutar.
}
?>

En el siguiente ejemplo $i inicia en 0, luego se valida la condicion, $i sea menor que
cero entonces se muestrar en pantalla el valor de $i, luego $i se incrementa en uno con
el ultimo bloque del ciclo for $i++, y vuelve nuevamente a comparar hasta que se
cumpla la condicin y se sale del ciclo.

<html>
<head>
<title>uso del ciclo for</title>
</head>
<body>
<?php
for($i=0 ; $i<10 ; $i++)
{
echo "El valor de i es ", $i,"<br>";
}
?>
</body>
</html>


Salida

echo mensajes muestra una o mas cadenas
printf muestra una cadena

Hasta ahora hemos usado la instruccin echo para realizar salida a pantalla, esta
instruccin es bastante limitada ya que no nos permite formatear la salida. La
instruccin printf nos da mucha ms potencia.
Sentencia printf

<?php
printf(cadena formato, variable1, variable2...);
?>

La cadena de formateo indica cmo se han de representar las valores que se le indiquen.
La principal ventaja es que adems de poder formatear los valores de salida, nos permite
intercalar texto entre ellos.

<html>
<head>
<title>uso de printf</title>
</head>
<body>
<?php
printf("El numero dos con diferentes formatos: %d %f %.2f",2,2,2);
?>
</body>
</html>

La cadena de formato puede incluir una seria de carcteres especiales que indican como
formatear las variables que se incluyen en la instruccin. Entre ellos tenemos:

Elemento Tipo de variable
%s Cadena de carcteres.
%d Nmero sin decimales.
%f Nmero con decimales.
%c Carcter ASCII.
Aunque existen otros tipos, estos son los ms importantes.


<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<?php
$var="texto";
$num=3;
printf("Puede fcimente intercalar <b>%s</b> con nmeros <b>%d</b>
<br>",$var,$num);

printf("<TABLE BORDER=1 CELLPADDING=20>");
for ($i=0;$i<10;$i++)
{
printf("<tr><td>%10.d</td></tr>",$i);
}
printf("</table>");
?>
</body>
</html>

Manejo de cadenas

Dado el uso del lenguaje PHP el tratamiento de cadenas es muy importante, existen
bastantes funciones para el manejo de cadenas, a continuacin explicaremos las ms
usadas.
1. trlen(cadena). Nos devuelve el nmero de carcteres de una cadena.
1. split(separador,cadena). Divide una cadena en varias usando un carcter
separador.
2. sprintf(cadena de formato, var1, var2...). Formatea una cadena de texto al igual
que printf pero el resultado es devuelto como una cadena.
3. substr(cadena, inicio, longitud). Devuelve una subcadena de otra, empezando
por inicio y de longitud longitud.
4. chop(cadena). Elimina los saltos de lnea y los espacios finales de una cadena.
5. strpos(cadena1, cadena2). Busca la cadena2 dentro de cadena1 indicndonos la
posicin en la que se encuentra.
6. str_replace(cadena1, cadena2, texto). Reemplaza la cadena1 por la cadena2 en
el texto.
Ejemplo del uso de funciones de cadena

<html>
<head>
<title>uso de cadenas</title>
</head>
<body>
<?php
echo strlen("12345"),"<br>";

$palabras=split(" ","Esto es una prueba");
for($i=0;$palabras[$i];$i++)
echo $palabras[$i],"<br>";

$resultado=sprintf("8x5 = %d <br>",8*5);
echo $resultado,"<br>";

echo substr("Devuelve una subcadena de otra",9,3),"<br><br>";

if (chop("Cadena \n\n ") == "Cadena")
echo "Iguales<br><br>";

echo strpos("Busca la palabra dentro de la frase", "palabra"),"<br><br>";

echo str_replace("verde","rojo","Un pez de color verde, como verde es la
hierba."),"<br>";

?>
</body>
</html>


PROCESANDO FORMULARIO

Envo y recepcin de datos
El lenguaje PHP nos proporciona una manera sencilla de manejar formularios,
permitindonos de esta manera procesar la informacin que el usuario ha introducido.
Al disear un formulario debemos indicar la pgina PHP que procesar el formulario,
as como en mtodo por el que se le pasar la informacin a la pgina.

<html>
<head>
<title>formulario</title>
</head>
<body>
<H1> proceso de formularios</H1>
Introduzca su nombre:
<FORM ACTION="procesa.phtml" METHOD="GET">
<INPUT TYPE="text" NAME="nombre"><BR>
<INPUT TYPE="submit" VALUE="Enviar">
</FORM>
</body>
</html>

Al pulsar el botn Enviar el contenido de cuadro de texto es enviado a la pgina que
indicamos en el atributo ACTION de la etiqueta FORM.
Para acceder a las variables del formulario hay que usar el array de parmetros
$_POST[] o $_GET[] dependiendo del mtodo usado para enviar los parmetros.
En este ejemplo se ha creado una entrada en el array $_GET[] con el ndice 'nombre' y
con el valor que haya introducido el navegante.

<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<H1>Ejemplo de procesado de formularios</H1>
El nombre que ha introducido es:
<?php echo $_GET['nombre'] ?>
<br>
</body>
</html>

Method GET y POST
Los datos de un formulario se enva mediante el mtodo indicado en el atributo
METHOD de la etiqueta FORM, los dos mtodos posibles son GET y POST.
La diferencia entre estos dos mtodos radica en la forma de enviar los datos a la pgina,
mientras que el mtodo GET enva los datos usando la URL, el mtodo POST los enva
por la entrada estndar STDIO.

Envio usando el metodo GET

<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<H1>Ejemplo de procesado de formularios</H1>

<FORM ACTION="procesa2.phtml" METHOD="GET">
Introduzca su nombre:<INPUT TYPE="text" NAME="nombre"><BR>
Introduzca sus apellidos:<INPUT TYPE="text" NAME="apellidos"><BR>
<INPUT TYPE="submit" VALUE="Enviar">
</FORM>
</body>
</html>

Envio usando el metodo POST

<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<H1>Ejemplo de procesado de formularios</H1>
<FORM ACTION="procesa2.phtml" METHOD="POST">
Introduzca su nombre:<INPUT TYPE="text" NAME="nombre"><BR>
Introduzca sus apellidos:<INPUT TYPE="text" NAME="apellidos"><BR>
<INPUT TYPE="submit" VALUE="Enviar">
</FORM>
</body>
</html>


procesa2.phtml
<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<H1>Ejemplo de procesado de formularios</H1>
El nombre que ha introducido por GET es: <?php echo $_GET['nombre'],"
",$_GET['apellidos'] ?><br>
El nombre que ha introducido por POST es: <?php echo $_POST['nombre'],"
",$_POST['apellidos'] ?>
<br>
</body>
</html>

El resultado final es el mismo, solo que con el mtodo GET podemos ver los parmetros
pasados ya que estn codificados en la URL.

También podría gustarte