Você está na página 1de 27

!

Curso-Taller: Desarrollo de Sitios Web con PHP


PRESENTACIN
Aunque existe una multitud de lenguajes y entornos de desarrollo concebidos para Internet, PHP se ha convertido en uno de los lenguajes, del lado servidor, ms ampliamente utilizados para el desarrollo de pginas dinmicas junto con ASP, JSP, ColdFusion y Perl. En el ltimo ao, el nmero de servidores que utilizan PHP se ha disparado, logrando situarse cerca de los 20 millones de sitios, esto es, ms del 30% de los dominios en internet. En PHP se combinan muchas caractersticas que contribuyen notablemente a su masiva utilizacin; entre otras, est el hecho de ser un software de libre distribucin y multiplataforma convertido en el complemento ideal para el popular tndem Linux-Apache en el desarrollo de sitios Web. Pero lo ms destacable del lenguaje, y una de las caractersticas que ms han influido en su popularizacin, es su sencillez de uso para los programadores principiantes (se pueden desarrollar aplicaciones sencillas en un corto intervalo de tiempo) y sus posibilidades avanzadas para el profesional (Comunicacin con bases de datos, comunicacin va sockets, generacin de grficos, etc.).

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"!#!$ % & ' ( ) !

ndice Introduccin
1. Sintaxis bsica 1.1. Comentarios 1.2. Declaracin de variables 1.3. Variables predefinidas 1.4. Tipos de datos 1.4.1.Cadenas 1.4.2.Arrays 1.5. Funciones para variables 1.6. Constantes 1.6.1.Constantes predefinidas 1.7. Operadores 1.7.1.Operadores aritmticos 1.7.2.Operadores de asignacin 1.7.3.Incremento y decremento 1.7.4.Operadores de comparacin 1.7.5.Operadores lgicos 2. Estructuras de control 2.1. Sentencias condicionales 2.1.1.If 2.1.2.If!else 2.1.3.If!elseif 2.1.4.If compacto 2.1.5.Switch 2.1.6.For 2.1.7.Foreach 2.1.8.While 2.1.9.Include 2.1.10. Require 3. Cadenas 4. Arrays 5. Funciones 6. Funciones de fecha y hora 7. Cookies y sesiones 7.1. Cookies 7.2. Sesiones 8. Bases de datos 8.1. MySQL 8.2. Creacin de una base de datos 8.3. Creacin de tablas 8.4. Tipos de datos 8.5. Conexin a una base de datos con PHP 8.6. Aadir registros 8.7. Eliminar registros 8.8. Modificar registros 8.9. Funciones de PHP para el manejo de MySQL 9. PHP5 9.1. Clases y Objetos
www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*!#!$ % & ' ( ) !

!
9.1.1.Constructores 9.1.2.Destructores 9.1.3.Modificadores de acceso 9.1.4.Nuevos mtodos 9.1.5.Clonacin de objetos 9.1.6.Clases abstractas 9.1.7.Interfaces 9.1.8.Operador InstaceOf 9.1.9.Autocarga de clases 9.1.10. Acceso a subojetos

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+!#!$ % & ' ( ) !

Introduccin
PHP es un lenguaje de programacin interpretado, diseado originalmente para la creacin de pginas web dinmicas. Es usado principalmente en interpretacin del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de lnea de comandos o en la creacin de otros tipos de programas incluyendo aplicaciones con interfaz grfica usando las bibliotecas Qt o GTK+. PHP es un acrnimo recursivo que significa PHP Hypertext Pre-processor (inicialmente PHP Tools, o, Personal Home Page Tools). Fue creado originalmente por Rasmus Lerdof en 1994; sin embargo la implementacin principal de PHP es producida ahora por The PHP Group y sirve como el estndar de facto para PHP al no haber una especificacin formal. Publicado bajo la PHP License, la Free Software Foundation considera esta licencia como software libre. PHP es un lenguaje interpretado de propsito general ampliamente usado y que est diseado especialmente para desarrollo web y puede ser embebido dentro de cdigo HTML. Generalmente se ejecuta en un servidor web, tomando el cdigo en PHP como su entrada y creando pginas web como salida. Puede ser desplegado en la mayora de los servidores web y en casi todos los sistemas operativos y plataformas sin costo alguno. PHP se encuentra instalado en ms de 20 millones de sitios web y en un milln de servidores, aunque el nmero de sitios en PHP ha declinado desde agosto de 2005. Es tambin el mdulo Apache ms popular entre las computadoras que utilizan Apache como servidor web. La ms reciente versin principal del PHP fue la versin 5.2.6 de 1 de mayo de 2008.

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!,!#!$ % & ' ( ) !

1. Sintaxis bsica
Objetivo particular: Al finalizar el tema, el participante ser capaz de conocer la sintaxis bsica y particularidades del lenguaje PHP. Introduccin: PHP es un lenguaje de programacin muy poderoso y a la vez sencillo de utilizar, gracias a esto se debe la gran popularidad que ha tenido los ltimos aos y an sigue evolucionando. Para crear un documento en PHP primeramente se escriben los delimitadores <?php y ?>. La extensin para los archivos de PHP es .php.

1.1 Comentarios
Existen 3 tipos de comentarios en PHP:
//Comentario para una lnea. ############ #Comentario ############ /* *Comentarios para *varias lneas */

1.2 Declaracin de variables


Para crear una variable en PHP simplemente se escribe un $ seguido del nombre de la variable, por ejemplo:
$a = 1; $fruta = Manzana; $MiVariable = Valor;

PHP diferencia entre maysculas y minsculas en las variables. Las variables no pueden comenzar con nmero, no pueden tener espacio, sin comas ni caracteres especiales.
$valor actual [MAL] $#Datos X [MAL] $2Saldos X [MAL] $Prueba, Valor [MAL]

Cuando utilizamos comillas dobles, podemos incluir dentro de la cadena nombres de variables que sern evaluados (sustituidos por sus respectivos valores) a la hora de mostrar la informacin. Si introducimos nombres de variables dentro de una cadena encerrada entre comillas simples, la variable no ser evaluada.

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!-!#!$ % & ' ( ) !

1.3 Variables predefinidas


$PHP_SELF; $_COOKIES; $_GET; $_POST; $_SERVER; $_SESSION; $_FILES;

1.4 Tipos de datos


En PHP existen todos los tipos de datos: numrico, decimal, boolean, string, array, objeto, etc. La ventaja de PHP sobre otros lenguajes es que no es necesario declarar las variables para poderlas utilizar, simplemente se crean cuando se desean usar. PHP cuenta con un convertidor automtico de tipos de datos, es decir PHP puede hacer sin ningn problema la siguiente operacin y no marcara ningn error:
$a = 3; //valor numrico. $b = 5; //valor string. echo ($a + $b) //Imprime 8.

1.4.1 Cadenas
Para crear un valor tipo cadena (string) simplemente se escribe el contenido de la variable entre comillas dobles () o comillas simples ().
$nombre = Carlos; $apellido = Santana; echo $nombre.$apellido; //Imprime: Carlos Santana

Cdigo de escape \b \f \n \r \t \ \

Significado Espacio hacia atrs (backspace). Cambio de pgina (form feed). Cambio de lnea (line feed). Retorno de carro (carriage return) Tabulacin Comilla simple Comilla doble

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!.!#!$ % & ' ( ) !

1.4.2 Arrays
Los arrays o matrices son estructuras que permiten el almacenamiento de un conjunto de datos bajo un mismo nombre; son una construccin tradicional de los lenguajes de programacin. Podemos definir un array como un conjunto ordenado de elementos identificados por un ndice (la posicin del elemento dentro de esta coleccin ordenada), de modo que en cada posicin marcada por un ndice el array contiene un valor. Se pueden construir tantos ndices como se quiera, aunque el uso habitual de los arrays es en forma de matriz unidimensional. La longitud del array se modifica de forma dinmica siempre que le aadimos un nuevo elemento. En PHP, los arrays pueden estar compuestos de elementos de diferente naturaleza y su primer ndice o posicin es la 0. Adems, existen unos arrays especiales en PHP denominados asociativos en los que el ndice es un valor de tipo string, de modo que cada posicin est definida por el par (clave, valor), pudiendo acceder al contenido (valor) a travs de la clave. Ejemplo de array escalar:
<?php $array[0] = Mi Nombre; $array[1] = es Carlos y tengo; $array[2] = 20 aos; $array[] = y estudio telemtica; //Lo insertara en la posicin 3. for($i = 0; $i <= count($array) 1; $i++) { echo $array[$i]. ; } ?>

Ejemplo de array asociativo:


<?php $array[Nombre] = Mi Nombre; $array[Es] = es Carlos y tengo; $array[Tengo] = 20 aos; $array[Estudio] = y estudio telemtica; //Lo insertara en la posicin 3. echo $array[Nombre].$array[Es].$array[Tengo].$array[Estudio]; ?>

1.5 Funciones para variables


Gettype (variable): Devuelve el tipo de dato pasado como parmetro, pudiendo devolver como valor: integer, float, string, array, class, object y unknown type. Settype (variable, tipo): Establece el tipo de dato a guardar en una variable. Con esta funcin podemos realizar conversiones de un tipo de datos a otros. Devolver true si ha tenido xito; en caso contrario devolver false. Isset (variable): Indica si una variable ha sido inicializada con un valor, en cuyo caso devuelve true, y en caso contrario false. Unset (Variable): Destruye una variable liberando los recursos dedicados a dicha variable. Es necesario indicar como parmetros el nombre de la variable a destruir. Empty (variable): Devuelve true si la variable an no ha sido inicializada o bien tiene un valor de 0 o es una cadena vaca y, en caso contrario devuelve false.
www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!/!#!$ % & ' ( ) !

Is_Int (variable), is_integer (variable), is_long (variable): Estas funciones devuelven true si la variable pasada como argumento es de tipo integer; caso contrario devuelve false. Is_float (var), is_real (var), is_double (var): Estas funciones regresan true si la variable es de tipo float; caso contrario regresa false. Is_numeric (var): True si es un nmero o cadena numrica. Is_bool (var): True si la variable es de tipo lgico. Is_array (var): True si la variable es un array. Is_string (var): True si la variable es de tipo string. Is_object (var): True si la variable es un objeto. Intval (var, base), floatval (var), strval (var): Estas funciones sirven para realizar conversiones de tipos (casting), de modo que convierten a integer, float, o string, respectivamente, el valor de la variable que se le pasa como parmetro. En particular, la funcin intval() puede recibir adems un segundo parmetro que representa la base a utilizar en la conversin (10 = decima, 8 = octal y 16 = hexadecimal), tomando por defecto la base 10 de los nmeros decimales.

1.6 Constantes
Una constante es una variable que mantiene el mismo valor durante la ejecucin del programa. Se puede asegurar que la constante mantiene siempre el mismo valor; en ninguna parte del script se puede cambiar el valor de una constante una vez que se define. De hecho, los intentos de cambio provocan errores. Define (constante, valor): Esta funcin nos permite crear una constante asignndole su nombre y su valor a travs de los parmetros que recibe. Defined (constante): Esta funcin devuelve true si la constante est definida y existe.

1.6.1 Constantes Predefinidas


Constante PHP_VERSION Significado Cadena que representa la versin del intrprete de PHP en uso. Cadena con el nombre del sistema operativo con el que se est ejecutando el intrprete de PHP. Verdadero. Falso. Informacin sobre errores distintos a los de interpretacin del cual no es posible recuperarse.

PHP_OS

TRUE FALSE E_ERROR

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!0!#!$ % & ' ( ) !

!
E_PARSE Informa que el intrprete encontr una sintaxis invlida en el archivo de comandos. Finaliza la ejecucin. Informa que se produjo algo incorrecto que puede provenir o no de un error. La ejecucin contina. Denota un error que no impide que contine la ejecucin. Conjunto con todos los errores que se han producido.

E_NOTICE

E_WARNING

E_ALL

1.7 Operadores
Los operadores en PHP son muy parecidos a los de otros lenguajes como C, Java y Javascript. Se utilizan para determinar un valor, o bien, para obtener un valor final a partir de uno o ms operandos. Podemos encontrar varios tipos de operadores.

1.7.1 Operadores Aritmticos


Estos operadores funcionan igual que en la aritmtica bsica y se pueden aplicar a las variables y constantes numricas. Son los siguientes: Operador + * / % Ejemplo $a + $b $a - $b $a * $b $a / $b $a % $b Descripcin Suma dos operandos. Resta dos operandos. Multiplica dos operandos. Divide dos operandos. Resto de la divisin entera

1.7.2 Operadores de asignacin


El operador de asignacin ms utilizado es =; su funcin bsica es asignar un valor a una variable, para que de este modo se pueda conservar dicho valor en memoria. El operador de asignacin es un operador binario que siempre toma la forma: Variable = Expresin Este operador de asignacin hace que la variable de la izquierda tome el valor de la expresin de la derecha. PHP soporta otros operadores de asignacin, que realmente son una combinacin del operador de asignacin bsico con operadores aritmticos y con el operador de concatenacin de cadenas.

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1!#!$ % & ' ( ) !

!
Operador = += -= *= /= %= .=

!
Ejemplo $a = $b $a += $b $a -= $b $a *= $b $a /= $b $a %= $b $a .= $b Descripcin $a toma el valor de $b Equivale a: $a = $a + $b Equivale a: $a = $a - $b Equivale a: $a = $a * $b Equivale a: $a = $a / $b Equivale a: $a = $a % $b Equivale a: $a = $a . $b

1.7.3 Incremento y decremento


Al igual que otros lenguajes de programacin como C, PHP soporta operadores especficos para incrementar y decrementar el valor de las variables. Adems, el momento de su ejecucin depender de la posicin en la que aparezcan respecto de la variable a la que son aplicados. Operador Ejemplo ++$a ++ $a++ Descripcin Preincremento: Incrementa $a en uno y despus devuelve $a. Postincremento: Devuelve $a y despus incrementa en uno $a. Predecremento: Decrementa $a en uno y despus devuelve $a. Postdecremento: Devuelve $a y despus Decrementa en uno $a.

--$a -$a--

1.7.4 Operadores de comparacin


Operador == != === Ejemplo $a == $b $a != $b $a === $b Descripcin Los operandos son iguales. Los operandos son distintos. Los operandos son idnticos: iguales y del mismo tipo. Los operandos no son iguales o del mismo tipo. El operando de la izquierda es menor que el operando de la derecha. El operando de la izquierda es menor o igual que el operando de

!==

$a !== $b

<

$a < $b

>

$a > $b

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"2!#!$ % & ' ( ) !

!
.<=

!
la derecha. $a <= $b El operando de la izquierda es menor o igual que el de la derecha. El operando de la izquierda es mayor o igual que el de la derecha.

>=

$a >= $b

1.7.5 Operadores lgicos


Los operadores lgicos (tambin llamados operadores booleanos) se utilizan conjuntamente con expresiones que devuelven valores lgicos. Con estos operadores se pueden combinar varias condiciones y evaluarlas en una sola expresin. Operador && and || or Ejemplo $a && $b $a and $b $a || $b $a or $b Descripcin $a y $b son ambos true.

$a o $b son true.

! $a

$a es false, niega el valor lgico de la variable.

Xor

$a xor $b

$a es true o $b es true, pero no lo son los dos a la vez.

2 Estructuras de control
Las estructuras de control o sentencias de control nos permiten modificar el flujo de ejecucin bsico del programa, es decir, gracias a ellas la ejecucin no tiene por qu ser totalmente secuencial, vamos a poder controlar el flujo lgico de cualquier programa. Estas estructuras nos permiten bifurcar el flujo del programa y as ejecutar unas partes u otras del cdigo segn se cumplan una serie de condiciones, hacer que un determinado cdigo no llegue a ejecutarse nunca o que lo haga tantas veces como queramos.

2.1 Sentencias condicionales


Son las estructuras de control ms sencillas, se basan en el uso de la sentencia if!else y en las diferentes formas que sta puede presentar. Utilizando estas sentencias, somos capaces de hacer que el programa elija entre dos caminos de ejecucin diferentes en funcin de la evaluacin de una expresin lgica.

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!""!#!$ % & ' ( ) !

2.1.1 If
Es una de las ms utilizadas e importantes en la mayora de los lenguajes de programacin. Su sintaxis es la siguiente: If (condicin) { [sentencias] } El intrprete de PHP lo que hace es evaluar la condicin, que debe ser una expresin lgica y, si resulta verdadera, se ejecutarn las sentencias comprendidas entre las llaves { y } y, si es falsa, PHP ignorar las sentencias y seguir con la ejecucin normal del programa, es decir, nos permite tomar decisiones en torno a una condicin. Las sentencias if se pueden anidar, es decir, podemos poner dentro de un bloque if otras sentencias if, lo cual proporciona una flexibilidad completa para ejecuciones condicionales. <?php $a = 3; $b = 7; $c = 9; echo El nmero mayor es:; if($a > $b) { if($a > $c) { echo $a; } } if($b > $a) { if($b > $c) { echo $b; } If ($c > $b) { echo $c; } } ?>

2.1.2 If! else


La sentencia if!else consta de un bloque if que se ejecuta cuando la expresin se evala a true y de un bloque else cuyas instrucciones se ejecutarn cuando se evala a false. La sintaxis de la instruccin if!else es la siguiente: If (expresin) { [sentencias] } else { [sentencias]

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"*!#!$ % & ' ( ) !

2.1.3 If!elseif
Hay muchas ocasiones en que se quiere evaluar una nueva comprobacin utilizando una sentencia if dentro del cuerpo de una sentencia else; para estos casos se puede utilizar la sentencia elseif que nos permite combinar ambas sentencias en una sola. La sintaxis de la sentencia if!elseif es la siguiente: If(expresin) { [sentencias] } elseif(expresin) { [sentencias] } elseif(expresin) { [sentencias] } else { [sentencias] } Ejemplo: <? echo Hoy es: ; $dia = date(D); if($dia == Mon) echo Lunes; elseif($dia == Tue) echo Martes; elseif($dia == Wed) echo Mircoles; elseif($dia == Thu) echo Jueves; elseif($dia == Fri) echo Viernes; elseif($dia == Sat) echo Sbado; else echo Domingo; ?>

2.1.4 If compacto
PHP utiliza dos operadores (? y :) para formar expresiones condicionales que devolvern uno de dos posibles valores basndose en el valor lgico obtenido al evaluar una expresin. La sintaxis de estos operadores es: <expresion1> ? <expresion2> : <expresion3>; De este modo considerando expresin1, si sta se evala a true, entonces de devolvera la evaluacin de expresin2; en caso contrario, el valor devuelto sera el resultado de evaluar la expresin3.

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"+!#!$ % & ' ( ) !

!
<?php $a = 3; $b = 7; $c = 9;

$mayor = ($a > $b) ? $a : $b; echo El mayor es; echo ($mayor < $c) ? $c : $mayor; ?>

2.1.5 Switch
La sentencia switch se utiliza para compara un dato con un conjunto de posibles valores. Esta tarea se puede realizar utilizando mltiples sentencias if o con una sentencia if!elseif mltiple, pero la sentencia switch es mucho ms legible y nos permite especificar un conjunto de sentencias por defecto, en el caso de que el dato no tenga un valor con que compararlo. Switch($variable) { case valor N: [sentencias] [break;] [default: sentencias; ] } Ejemplo: <?php echo Hoy es: ; $dia = date(D); switch($dia) { case Mon: echo Lunes; break; case Tue: echo Martes; break; case Wed: echo Mircoles; break; case Thu: echo Jueves; break; case Fri: echo Viernes; break; case Sat: echo Sbado; break; default: echo Domingo; } ?>

2.1.6 For
Esta instruccin nos permite realizar un conjunto de instrucciones un determinado nmero de veces. Es una de las estructuras de control sintcticamente ms compleja de PHP.

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!",!#!$ % & ' ( ) !

!
For ([inicializacin]; [condicin]; [bucles]) { [sentencias] }

Las tres expresiones cerradas entre parntesis son opcionales, pero es necesario escribir los caracteres punto y coma (;) que las separan aunque las expresiones se omitan, para que cada expresin permanezca en el lugar apropiado. <? echo La suma de los 10 primeros nmeros enteros es: ; $suma = 0; for($i = 1; $i <= 10; $i++) { $suma += $i; echo $i; if($i == 10) echo =; else echo +; } echo <strong>$suma</strong>; ?>

2.1.7 Foreach
Esta sentencia nos permite recorrer las estructuras de tipo array de una forma sencilla, obteniendo en cada paso de la iteracin uno de sus elementos componentes. Tambin se suele utilizar para traducir tablas de tipo hash. Foreach($array as $variable) { [sentencias] } Lo que hace el bucle es recorrer cada uno de los elementos del array que tiene por nombre $array, asignado en cada paso el valor del elemento actual del array al contenido de la variable $variable. El bucle hace uso de un puntero interno que apunta a la posicin actual del array (comenzando por la primera y siguiendo en orden ascendente) y que va actualizando de forma automtica en cada una de las iteraciones. <?php $array=array("Manzana","Pera","Platano"); reset($array); foreach ($array as $fruta){ echo "Fruta:$fruta<br>\n"; } ?> Tambin est funcin se puede aplicar a un array de tipo asociativo, en el que el ndice en cada elemento no es de tipo numrico.

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"-!#!$ % & ' ( ) !

!
$a=array( "uno"=>1, "dos"=>2, "tres"=>3, "diecisiete"=>17 );

foreach($a as $k=>$v){ echo $a[$k]=>$v; }

2.1.8 While
La sentencia while acta de forma muy parecida a la sentencia for, pero se diferencia de sta en que no incluye en su declaracin la inicializacin de la variable de control del bucle ni su incremento o decremento. Por tanto dicha variable se deber declarar antes del bucle while y su incremento y decremento se deber realizar dentro del cuerpo de dicho bucle. While (condicin) { [sentencias] } Con esta instruccin se va a poder ejecutar un conjunto de instrucciones un indeterminado nmero de veces, siempre y cuando el resultado de comprobar la condicin sea verdadera (debe ser una expresin que se evale a un valor lgico). Si la condicin se evala a true, se ejecutan las sentencias del cuerpo del bucle; despus de ejecutarlas, se volver a evaluar la condicin, de forma que, si sta sigue cumplindose, se volvern a ejecutar las sentencias. Esto se repite hasta que la condicin se evala a false, en cuyo caso no se ejecutarn las sentencias del cuerpo del bucle y continuar la ejecucin del script por la instruccin siguiente a la sentencia while. <?php /* ejemplo 1 */ $i = 1; while ($i <= 10) { print $i++; /* el valor impreso sera $i antes del incremento (post-incremento) */ } /* ejemplo 2 */ $i = 1; while ($i <= 10): print $i; $i++; endwhile; ?>

Los bucles do...while son muy similares a los bucles while, excepto que las condiciones se comprueban al final de cada iteracin en vez de al principio. La principal diferencia frente a los bucles regulares while es que se garantiza la ejecucin de la primera iteracin de un bucle
www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!".!#!$ % & ' ( ) !

do...while (la condicin se comprueba slo al final de la iteracin), mientras que puede no ser necesariamente ejecutada con un bucle while regular (la condicin se comprueba al principio de cada iteracin, si esta se evala como FALSE desde el principio la ejecucin del bucle finalizar inmediatamente). <?php $i=0; do{ print $i; } while($i>0); ?>

2.1.9 Include
Esta funcin incluye y evala un fichero externo cada vez que es interpretada. Ambos pasos, la inclusin del fichero externo y su posterior evaluacin, se realizan cada vez que el flujo del programa llega a una lnea que contenga la llamada a esta funcin. En caso de que el fichero a incluir no exista o su referencia sea errnea, la funcin genera un aviso o warning, continuando con la ejecucin por la siguiente instruccin. Cuando un archivo se incluye con include(), el intrprete sale del modo PHP y entra en modo HTML al principio del archivo referenciado, y vuelve de nuevo al modo PHP al acabar de leer dicho archivo. Por esta razn, cualquier cdigo dentro del archivo referenciado que debiera ser ejecutado como cdigo PHP debe ser encerrado dentro de etiquetas vlidas de comienzo y fin de PHP. variables.php <?php $color='verde'; $fruta='manzana'; ?> prueba.php echo "Una $fruta $color";//Una include 'variables.php'; echo "Una $fruta $color"; //Una Manzana Verde

2.1.10 Require
La sentencia require() incluye y evala el archivo especificado. Require() e include() son idnticas en todos los aspectos excepto en el modo de actuar ante un error. include() produce un Warning mientras que require() produce un Error Fatal. En otras palabras, no dude en utilizar require() si quiere que un fichero no encontrado cuelgue el procesamiento de la pgina. include() no se comporta de esta manera, el script seguir funcionando de todas maneras. Asegurarse que include_path este configurado bien.

3 Cadenas
Echo (cadena), print (cadena): No son funciones propiamente dichas, sino construcciones del lenguaje. Ambas muestran informacin por la salida estndar; no soportan ningn atributo de formato de salida y slo admiten una nica cadena como argumento en su llamada (cuando necesitamos pasar ms de un argumento a cualquiera de estas funciones, deberemos utilizar las comillas).

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"/!#!$ % & ' ( ) !

Printf (formato [, argumentos]): Imprime informacin por la salida estndar soportando diferentes formatos de salida. Admite mltiples tipos de argumentos a visualizar. Imprime una cadena cuyo estructura depende del formato descrito en el argumento formato. Esta cadena est formada por una ristra de caracteres, algunos de los cuales se mostrarn directamente, mientras que otros, los que van precedidos por el carcter %, conocidos como especificaciones de conversin, son utilizados para formatear la informacin. Strlen(cadena): Devuelve la longitud de la cadena pasada como argumento. Strstr(cadena, cadBusq), strchr(cadena, cadBusq): Busca la aparicin de una cadena dentro de otra y devuelve la subcadena comprendida entre la primera aparicin de la cadena buscada (incluyndola) hasta el final de la cadena en la que se realiza la bsqueda. La bsqueda diferencia entre maysculas y minsculas. Strrchr(cadena, cadBusq): Busca la aparicin de un carcter en una cadena y devuelve la subcadena. Si el elemento a buscar no es una cadena, se convierte a entero y se aplica como el valor ordinal de un carcter. Stristr(cadena, cadBusq): Es igual a strstr(), salvo que no diferencia entre maysculas y minsculas. Strpos(cad1, cad2 [, desplz]): Encuentra la primera posicin de aparicin de una cadena a partir de una cierta posicin (si no se indica, el valor por defecto para el desplazamiento es 0). Strspn(cadena, mscara): Obtenemos la longitud de la subcadena ms larga que est formada slo por caracteres contenidos en una mscara. Una vez encontrado un carcter que no est en la mscara se abandona la bsqueda. Strcmp(cad1, cad2): Compara dos cadenas y devuelve un valor menor que 0, si la segunda cadena es mayor que la primera, si la segunda es mayor a la primera; mayor que 0, en caso contrario, y 0, si ambas son iguales. Substr(cadena, inicio [, tamao]): Devuelve la subcadena que se encuentra a partir de una posicin dada y llega hasta el final de la cadena original, pudiendo de forma opcional decidir el tamao de la subcadena a recuperar. Substr_replace(cad1, cad2, inicio [, tamao]): Devuelve una cadena que es resultado de la sustitucin de parte del contenido de una cadena original (indicado por una posicin de inicio y opcionalmente por un tamao) por el contenido de otra cadena. La cadena original no sufre ninguna modificacin. Str_replace(cadBus, CadRee, Cadena): Devuelve una cadena, que es resultado de la sustitucin de todas las apariciones de una subcadena, por otro contenido en la cadena original. Substr_count(cadena, patrn): Devuelve el nmero de apariciones de una subcadena dentro de una cadena. Chop(Cadena): Devuelve la cadena argumento sin los espacios en blanco y caracteres de fin de lnea que se encuentran al final de la cadena. Ltrim(cadena): Elimina espacios en blanco que se encuentran al principio de una cadena de texto. Trim(cadena): Elimina los espacios en blanco que se encuentran al principio y al final de una cadena de texto.

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"0!#!$ % & ' ( ) !

Str_pad(cadena, long): Rellena una cadena con un carcter de relleno (por defecto, es el espacio en blanco) hasta que la cadena resultante tenga la longitud deseada. Strtolower(cadena): Convierte una cadena de caracteres a minsculas. Strtoupper(cadena): Convierte una cadena de caracteres a maysculas. Ucfirst(cadena): Se encarga de convertir a mayscula el primer carcter de una cadena de caracteres, siempre que ste sea alfabtico. Ucwords(cadena): Se comporta igual que la funcin anterior, salvo que sta convierte a maysculas el primer carcter de cada palabra que compone la cadena, siempre y cuando sean caracteres alfanumricos. Addslashes(cadena): Devuelve una cadena de caracteres igual que la original en la que se han escapado los caracteres especiales comillas dobles (), comillas simples () y barra invertida (\). Split(patrn, cadena): Devuelve un array resultado de dividir una cadena en diferentes subcadenas. El nmero total de elementos del array puede ser elegido a travs de un parmetro opcional.} Explode(patrn, cadena): Devuelve un array resultado de dividir una cadena en diferentes cadenas. Implode(nexo, cadena): Devuelve una cadena resultado de unir todos los elementos de un array en el mismo orden en el que aparecen, pero con una cadena en medio de ellos. Htmlspecialchars(cadena): Se encarga de convertir los caracteres con un significado especial en HTML. Htmlentities(cadena): Es similar a la funcin htmlspecialchars(), salvo que esta funcin traduce todos los caracteres a su correspondiente entidad en HTML.

4 Arrays
Constructor Otra forma de definir arrays es utilizar el constructor array() proporcionado por el lenguaje. Este constructor no es una funcin regular; tiene la siguiente definicin: Array array (mixed valores, !) Ejemplo: $vector = array(Carro, Moto, Bicicleta); echo $vector[0]; //Carro; echo $vector[1]; //Moto; echo $vector[2]; //Bicicleta; El constructor array() tambin nos permite asignar los elementos del array en el orden en que queramos. Para ello, indicamos el ndice, seguido del smbolo => y el valor del elemento. Ejemplo: $vector = array(2 => Manzana, 0 => Platano, Pera); Los elementos a los que no se les asigna explcitamente un ndice toman la posicin secuencial relativa a la ltima asignacin de posicin dentro del array.
www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"1!#!$ % & ' ( ) !

!
Arrays Asociativos

A diferencia de los arrays simples, los arrays asociativos (tambin conocidos como tablas hash o arrays indexados por cadena) estn formados por un conjunto de valores que estn ordenados respecto a un ndice de tipo string, es decir, una cadena de caracteres. De igual manera que ocurre con los arrays simples, podemos utilizar el constructor del lenguaje array() para definirlos, o bien, hacerlo especificando de forma explcita cada uno de sus componentes. Ejemplo: $vector = array(animal => Perro, nombre => Valiente, raza => Labrador, sexo => Masculino); Arrays Multidimensionales PHP nos permite definir arrays multidimensionales mediante la combinacin de arrays unidimensionales (que pueden ser tanto de tipo escalar, como asociativos). Ejemplo: $matriz[0][0] = Salud; $matriz[0][1] = Dinero; $matriz[1][0] = Amor; $matriz[1][1] = Sexo; $matriz[peso][moneda] = Pesos; $matriz[peso][cambio] = 10; $matriz[dolar][moneda] = Dlar; $matriz[dolar][cambio] = 0.1; Funciones para arrays Current(array): Devuelve el valor de la posicin actual del puntero dentro del array: todos los arrays tienen un puntero interno que apunta a la posicin del elemento actual con el que se est trabajando en un momento dado. Key(array): Devuelve el ndice de la posicin actual del array pasado como argumento. Next(array): Devuelve el valor del elemento siguiente al actual (si existe) y avanza el puntero interno una posicin. Prev(array): Devuelve el valor del elemento anterior al actual (si existe) y retrocede el puntero interno una posicin. End(array): Coloca el puntero interno en el ltimo elemento de un array escalar. Reset(array): Devuelve el valor del primer elemento del array y sita el puntero interno en su primera posicin. Each(array): Se usa para recorrer arrays (sobre todo los asociativos), pues devuelve un par de valores correspondientes a la clave y al valor asociado a esa clave. List(array): Asigna una lista de variables en una sola operacin. Suele utilizarse en combinacin con la funcin each().

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*2!#!$ % & ' ( ) !

Array_keys(array): Devuelve las claves que forman el array matriz. Admite un parmetro opcional que nos permite seleccionar slo las claves cuyo valor coincida con un patrn dado. Array_values(array): Devuelve los valores que forman parte del array pasado como parmetro. Sort(array): Ordena alfanumricamente los valores de los elementos de un array de menor a mayor. Para ordenar de manera inversa, disponemos de la funcin rsort(array). Asort(array): Ordena alfanumricamente los valores de los elementos de un array de mayor a menor, pero manteniendo la relacin existente entre los ndices y sus valores asociados. Arsort(array) realiza la ordenacin inversa. Ksort(array): Ordena alfanumricamente las claves de un array de menor a mayor manteniendo las correlaciones entre clave y valor asociado. Krsort(array) realiza la ordenacin inversa. Array_merge(array1, array2): Combina en un solo array los valores de los arrays que recibe como argumentos. Array_pad(array, tamao, relleno): Devuelve un array igual a matriz, pero modificando su nmero de elementos hasta alcanzar la longitud deseada (tamao) aadiendo nuevos elementos por la derecha (tamao es positivo) o por la izquierda (tamao es negativo). Array_slice(array, desplazamiento [, int tamao]): Devuelve los elementos del array que estn situados a partir de una posicin determinada por desplazamiento. Opcionalmente, podemos indicar el total de elementos que queremos. Array_splice(array, desplz [,tam [array substituto]]): Elimina elementos de un array, sustituyndolos opcionalmente por los elementos de otro array (substituto). Array_push(array, valor1 [, valor2, !]): Inserta uno o ms elementos al final del array (pila). Array_pop(array): Devuelve y elimina el ltimo elemento del array (el que corresponde con la cima de la pila). Array_shift(array): Devuelve y elimina el primer elemento del array (el que corresponde con la base de la pila). Array_unshift(array, valor1 [, valor2, !]): Inserta uno o ms elementos al principio del array. Array_reserve(array): Devuelve el array pasado como parmetro, pero con sus componentes en orden inverso. Range(limite_inf, limite_sup): Devuelve un array con los valores enteros comprendidos entre el primer argumento y el segundo que recibe la funcin, ambos inclusive. Array_count_values(array): Recibe como argumento un array y devuelve otro cuyos ndices son los mismos que los del array original y sus valores asociados son la frecuencia con la que se repiten dichos valores en el array original. In_array(elemento_busqueda, array): Con esta funcin podremos saber si un elemento est contenido dentro de un array. Compact(): Esta funcin recibe como argumento una lista de variables que han sido previamente definidas, que pueden aparecer como cadenas de caracteres o como arrays y devuelve un nuevo array en el que los ndices son los nombres de las variables y el contenido de los elementos del array son sus correspondientes valores.
www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*"!#!$ % & ' ( ) !

5 Funciones
La sintaxis de la declaracin de una funcin es la siguiente: Function nombreFuncin([parametro1 [,!]]) { [sentencias] } Una vez declarada una funcin, sta no se ejecuta hasta que se le llama desde cualquier parte del script. Para llamar a una funcin, slo hay que escribir una sentencia que contenga el nombre de la funcin y, entre parntesis, los valores de los argumentos de llamada de ella. <?php Function cuentaAtras() { For($i = 10; $i > 0; $i--) { echo $i.!<br />; } Echo !Boom!; } ?> <?php cuentaAtras(); ?> En ocasiones, necesitaremos definir funciones que aceptan parmetros o argumentos. De esta forma conseguimos que la funcin sea ms utilizable dentro del propsito general para el que est definida. <?php Function cuentaAtras($inicio) { For($i = $inicio; $i>0; $i--) echo $i.!<br />; echo !Boom!; } cuentaAtras(5); ?> Variables globales son todas aqullas que se definen fuera del cuerpo de una funcin y son accesibles, en general, desde cualquier punto del cdigo. En PHP, las variables globales deben ser declaradas globales dentro de la funcin si van a ser utilizados dentro de dicha funcin, anteponiendo a su definicin la palabra reservada global. Un segundo mtodo para acceder a las variables globales desde un mbito local es usando el array $GLOBALS (es un array asociativo con el nombre de la variable global como clave y los contenidos de dicha variable como el valor del elemento del array). Variables locales aparecen definidas dentro del cuerpo de una funcin y slo pueden ser accedidas desde dentro de esta funcin. Cualquier variable que se use dentro de una funcin est, por defecto, limitada al mbito local de la funcin. Esto quiere decir que, si declaramos una variable local con el mismo nombre que una variable global, dentro de la funcin trabajaremos con la versin local de la variable. <?php $inicio = 0;
www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!**!#!$ % & ' ( ) !

!
$final = 9;

Function cuentaAtras() { Global $final; #Variable global. $inicio = 7; #Variable local. Static $num = 0; #Variable esttica For(;$inicio>$final;$inicio--) Echo $inicio.!<br>; $num++; Echo !Boom -$num-; } cuentaAtras(); //$num vale 1. cuentaAtras(); //$num vale 2. ?> Del mismo modo que las funciones pueden recibir valores, tambin pueden devolverlos. La devolucin de un valor desde una funcin trabaja de igual forma que la devolucin de un valor en una expresin, de manera que el valor devuelto desde una funcin puede ser asignado a una variable o utilizado dentro de una expresin. Se puede devolver cualquier tipo de valores incluyendo listas y objetos, pero slo un nico valor; para devolver mltiples valores, deberemos utilizar un array. <?php Function ElMayor($dato1, $dato2, $dato3) { $elmayor = ($dato1 > $dato2) ? $dato1 : $dato2; $elmayor = ($elmayor > $dato3) ? $elmayor : $dato3; Return $elmayor; } Echo El Mayor de 17, 5 y 9 es .ElMayor(17,5,9).; ?> Se dice que una funcin es recursiva cuando en algn punto de su cuerpo se llama a s misma. Hay que tener cuidado al escribir una funcin recursiva, ya que puede ocurrir que se llame a s misma indefinidamente. Por tanto, es esencial asegurarse de implementar una forma adecuada de terminar la recursin: es lo que se denomina como condicin de parada. La recursin nos sirve para solucionar algunos problemas complejos; un ejemplo tpico de recursin es hallar el factorial de un nmero. <?php Function Factorial($numero) { If($numero == 0) return 1; Return $numero * Factorial($numero 1); } Function Factor_Iterativo($numero) { Echo $numero! = ; For($factorial = 1; $numero > 1; $numero--) { $factorial *= $numero; Echo $numero x ; } Echo 1 = $factorial; return $factorial; }
www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*+!#!$ % & ' ( ) !

!
Echo Factorial(5); Echo Factor_Iterativo(5); ?>

6 Funciones de fecha y hora


Es muy importante en muchos problemas y aplicaciones llevar un control con la fecha y la hora en un determinado momento, o bien, conocer la fecha para saber si tenemos que ejecutar un programa u otro!; existen muchas circunstancias donde es necesario conocer estos datos. PHP nos ofrece una gran variedad de funciones para abordar con mayor rapidez y de una forma ms sencilla los distintos problemas relacionados con el manejo de fechas y tiempos que nos puedan ir saliendo a la hora de realizar nuestros programas. En casi todos los sistemas informticos hay una fecha de inicio comn, a partir de la cual se empieza a contar el tiempo. En el caso de los sistemas UNIX la fecha elegida como comienzo es el da 1 de enero de 1970 a las 00:00:00 GMT, fecha que se conoce como el principio de la era UNIX. El contador de tiempo se conoce como marca de tiempo (timestamp) y representa el nmero de segundos transcurridos desde una fecha dada. En PHP todas las funciones de fecha/hora que trabajan con marcas de tiempo hacen referencia a esta fecha. Time(): Obtiene la marca de tiempo UNIX actual. Checkdate(): Valida una fecha en formato gragoriano. Date(): Da formato a la hora y la fecha locales. Getdate(): Obtiene informacin sobre la fecha y hora locales. Gettimeofday(): Obtiene la hora actual. Gmdate(): Formatea la fecha y la hora a formato GMT. Gmmktime(): Obtiene la marca de tiempo UNIX de una fecha con formato GMT. Gmstrftime(): Formatea la fecha y hora con formato GMT a las caractersticas locales. Microtime(): Obtiene la marca de tiempo UNIX actual en microsegundos. Mktime(): Obtiene la marca de tiempo UNIX para una fecha dada. Strftime(): Formatea la hora actual de acuerdo con las caractersticas locales. Strtotime(): Traduce una fecha u hora descrita en ingls a su correspondiente marca de tiempo UNIX. Hay una serie de parmetros que tienen un significado propio y son reconocidos dentro de la cadena de formato. Valores a A d D F h H g G a.m. o p.m. A.M. o P.M. Da del mes con dos dgitos (de 01 a 31) Da de la semana con tres caracteres. Nombre del mes Hora en formato 01 a 12 Hora en formato 00 a 23 Hora en formato 1 a 12 (sin cero) Hora en formato 0 a 23 (sin cero) Descripcin

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*,!#!$ % & ' ( ) !

!
i j l L m M n s S t U w y Y z Z

!
Minutos de 00 a 59 Da del mes en formato 1 a 31 (sin cero) Da de la semana, en texto completo 1: si es ao bisiesto, 0: si no es un ao bisiesto. Mes de 01 a 12 Mes con tres caracteres Mes de 1 a 12 Segundos de 00 a 59 Sufijo ordinal en ingls (th, nd) Nmero de das del mes dado, de 28 a 31 Segundos transcurridos desde el valor de inicio (01-01-1970) Da de la semana de 0 (domingo) a 6 (sbado) Ao con cuatro dgitos Ao con dos dgitos Da del ao de 0 a 365 Diferencia horaria en segundos de 43200 a 43200

7 Cookies y sesiones
Los usuarios normalmente completan un formulario modificando sus controles (introduciendo texto, seleccionando objetos de un men, etc.), antes de enviar el formulario a un agente para que lo procese (por ejemplo, a un servidor Web, a un servidor de correo, etc.). Todos los controles presentes en un formulario, para que sean efectivos, deben aparecer incluidos dentro de un elemento form de HTML. La etiqueta FORM acta, por tanto, como contenedor de controles. Pero, adems, especifica entre otros: -El programa que manejar los datos del formulario una vez haya sido completado y enviado (atributo action). El programa receptor debe ser capaz de interpretar las parejas nombre/valor para poder hacer uso de ellas. -La forma en la que se enviarn los datos del usuario al servidor (atributo method). -El tipo MIME usado para enviar los datos del formulario (atributo enctype). El valor por defecto de este atributo es application/x-www-form-urlencode. El atributo method del elemento form especifica el mtodo HTTP usado para enviar los datos del formulario al agente procesador. Este atributo puede tener dos valores: Get: El conjunto de datos del formulario se agrega (con el carcter ? como separador) al URI especificado en el atributo action (el programa que tratar los datos) y este nuevo URI se enva al agente procesador.

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*-!#!$ % & ' ( ) !

Post: Los datos del formulario se incluyen en el cuerpo del mensaje que se enva al agente procesador. El conjunto de datos del formulario que se enva al agente servidor es una secuencia de parejas nombre_de_control/valor construida a partir de los elementos del formulario. Cada uno de los controles tiene asociado un nombre que viene dado por su atributo name. De igual forma, cada control tiene tanto un valor inicial, como un valor actual, que son ambos cadenas de caracteres. En general (excepto en el caso del elemento textarea), el valor inicial de un control puede especificarse con el atributo value del elemento de control. El valor actual del control se iguala en un primer momento al valor inicial y, a partir de ese momento, el valor actual del control puede ser modificado a travs de la interaccin con el usuario y/o mediante scripts que se ejecuten en el cliente. El valor inicial de un control no cambia. As, cuando se reinicializa el formulario, el valor actual de cada control se iguala a su valor inicial. Si el elemento de control no tiene un valor inicial, se le asigna el valor nulo. Variable _POST Contenido Array que contienen las variables pasadas a travs del mtodo POST. Su uso es anlogo al array HTTP_POST_VARS de versiones anteriores a la 4.2.0 de PHP (obsoleto). Array que contiene las variables pasadas a travs del mtodo GET. Su uso es anlogo al array HTTP_GET_VARS de versiones anteriores a la 4.2.0 de PHP (obsoleto). Array que contiene las variables pasadas a travs de cualquier mecanismo de entrada.

_GET

_REQUEST

7.1 Cookies
Bsicamente, las cookies son ficheros de texto ASCII que almacenan informacin siguiendo una estructura bsica de pares identificador = valor. Su tamao es relativamente pequeo, no superando en ningn caso los 4 Kb. El modo en que se almacenan, los directorios en que se almacenan y el resto de caractersticas propias de una operacin de lectura/escritura sobre disco dependen de gran manera del sistema operativo y del navegador que tenga instalado el equipo cliente. De igual forma, la posibilidad de hacer uso de cookies depende que el software utilizado para acceder a la aplicacin Web (normalmente un navegador) cuente con esta caracterstica y que, adems, est habilitada. PHP propone una sola funcin para el manejo bsico de cookies (creacin y borrado) cuya sintaxis es la siguiente: Setcookie(Nombre_Cookie, valor, tiempo_de_vida); #Crea. Setcookie(Nombre_Cookie); #Elimina la cookie. Para poder acceder a los contenidos de las cookies, PHP proporciona una variable global consistente en un array asociativo formado por todas las variables pasadas a travs de las cookies. Es la variable $_COOKIE: $_COOKIE[nombre_de_la_cookie];

7.2 Sesiones
El modo principal de activar el uso de sesiones cuando lo deseemos es hacer uso de la funcin session_start().

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*.!#!$ % & ' ( ) !

Esta funcin crea una nueva sesin y genera el nuevo identificador, o retoma la sesin en caso de que existiera, utilizando el identificador de sesin que se haba propagado haciendo uso de la URL o de cookies. Session_register(nombre [, nombre]): Registra una nueva variable global para la sesin actual. En caso que no exista la sesin, la crea realizando una llamada implcita a la funcin session_start(). Session_is_registered(nombre): Devuelve true cuando la variable cuyo nombre se ha pasado como argument a la llamada est registrada dentro de la sesin actual. Session_unregister(nombre): Evita que la variable que se ha pasado como argumento a la llamada sea salvada como parte de la sesin actual, es decir, la elimina de la sesin, pero sigue siendo una variable del script donde se ejecuta (para esto tendramos que llamar a la funcin unset()).

www.zanphp.com!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/!#!$ % & ' ( ) !

Você também pode gostar