manual de php 6.docx

18
http://enreas.wikia.com/wiki/ Guia_Practica_Desarrollo_Web_con_PHP_6_y_MySQL_5. 1/Capitulo_2:_PHP La hora e n PHP Editar sección Nuestra primera página PHP sólo muestra la hora. Su código es muy sencillo: La hora es: <?= date("H:i:s") ?>. Mientras que la página HTML que vimos anteriormente era estática (siempre que la veamos con un cliente Web su aspecto será el mismo), el de esta página PHP siempre será diferente, dependiendo de la hora en la que la página sea mostrada. Es por ello que estas páginas se conocen como dinámicas. Funciones de salida Editar sección PHP nos proporciona diferentes formas de mostrar información en las páginas. Hemos visto ésta: La hora es: <?= date("H:i:s") ?>. Pero también podemos utilizar las funciones echo y print: La hora es: <? echo date("H:i:s") ?><br/>. La hora es: <? print date("H:i:s") ?><br/>. Comentarios Editar sección Es recomendable que introduzcamos comentarios en nuestras páginas PHP. Estos comentarios serán ignorados por el preprocesador de PHP, pero aquellos que tengan acceso al código fuente de las páginas podrán leerlos. Por lo general, los comentarios se utilizan para comentar aspectos del programa, indicar cuándo fue creado, por quién o qué tareas quedan por realizar. Existen dos tipos de comentario: de línea y de párrafo. Si comenzamos una línea con la pareja de caracteres //, esa línea será tomada por PHP como un comentario: <?php

Transcript of manual de php 6.docx

http://enreas.wikia.com/wiki/Guia_Practica_Desarrollo_Web_con_PHP_6_y_MySQL_5.1/Capitulo_2:_PHP

La hora e

n PHPEditar seccinNuestra primera pgina PHP slo muestra la hora. Su cdigo es muy sencillo:La hora es: .Mientras que la pgina HTML que vimos anteriormente era esttica (siempre que la veamos con un cliente Web su aspecto ser el mismo), el de esta pgina PHP siempre ser diferente, dependiendo de la hora en la que la pgina sea mostrada. Es por ello que estas pginas se conocen comodinmicas.Funciones de salidaEditar seccinPHP nos proporciona diferentes formas de mostrar informacin en las pginas. Hemos visto sta:La hora es: .Pero tambin podemos utilizar las funcionesechoyprint:La hora es:
.La hora es:
.ComentariosEditar seccinEs recomendable que introduzcamos comentarios en nuestras pginas PHP. Estos comentarios sern ignorados por el preprocesador de PHP, pero aquellos que tengan acceso al cdigo fuente de las pginas podrn leerlos. Por lo general, los comentarios se utilizan paracomentaraspectos del programa, indicar cundo fue creado, por quin o qu tareas quedan por realizar. Existen dos tipos de comentario: de lnea y de prrafo. Si comenzamos una lnea con la pareja de caracteres//, esa lnea ser tomada por PHP como un comentario:

La hora es: .Los comentarios de prrafo comienzan con la pareja de caracteres/*y terminan con*/:

La hora es: .El siguiente es un ejemplo de cmo utilizar los comentarios para incluir informacin en el encabezado de nuestras pginas:

La hora es: .VariablesEditar seccinPara declarar una variable en PHP slo tenemos que escribir el nombre de la variable y asignarle un valor. Por ejemplo:

El cdigo anterior almacena en la variable$horala hora tal y como la mostrbamos en los ejemplos anteriores. Las siguientes lneas son ejemplos de declaraciones correctas:$hora = date("H:i:s");$Hora = date("H:i:s");$_hora = date("H:i:s");$_1hora = date("H:i:s");Mientras que esta declaracin es incorrecta, ya que su nombre comienza con un nmero:$1hora = date("H:i:s");Tipos de datos: booleanoEditar seccinUna variable de tipo booleano puede tener dos posibles valores: verdadero o falso. En el siguiente programa declaramos dos variables de tipo booleano:

Tipos de datos: enteroEditar seccinEn una variable de tipo entero podemos almacenar valores enteros positivos y negativos, incluido el cero. Por ejemplo:

Tipos de datos: decimalEditar seccinUna variable de tipo decimal puede contener cualquier nmero en coma flotante. Por ejemplo:

Tipos de datos: cadenaEditar seccinUna cadena de texto no ms que una secuencia de caracteres. PHP nos permite definir cadenas de tres formas diferentes:1. Con comillas simples.2. Con dobles comillas.3. En bloque.Las cadenas ms sencillas son las que se especifican entre comillas simples:

Las cadenas entre comillas dobles tienen una caracterstica aadida que las hace muy interesantes: si contienen el nombre de una variable existente, PHP sustituir la variable por su valor. Por ejemplo:

Tras ejecutar estas dos lneas, el contenido de la variable$cadenaser "Un ao tiene 12 meses.".El tercer tipo de cadenas, en bloque, es muy similar al segundo tipo, aunque son ms adecuadas para cadenas de gran longitud:

Tipos de datos: matricesEditar seccinLas matrices nos permiten tener la informacin mucho ms organizada, pudiendo acceder a una serie de valores a travs de una sola variable, y utilizando un ndice como modificador. La siguiente es una de las posibles formas de declarar una matriz que contenga tres valores:

Para acceder a estos elementos slo necesitamos indicar el ndice de cada elemento tras el nombre de la variable, entre corchetes. Si los valores anteriores representasen las pelculas vistas en cada mes, podramos mostrar esa informacin as:

Podemos aadir nuevos elementos a una matriz despus de haberla creado:

PHP se encargar automticamente de crear el cuarto elemento de la matriz. Para ver el contenido de la matriz tras aadir este nuevo elemento podemos utilizar una funcin muy til:print_r(), que recibe como argumento una matriz:

En realidad, tras las matrices en PHP hay mucho ms que lo que parece a primera vista. Ms que matrices, podramos considerar que PHP nos proporciona diccionarios, con los que podemos traducir de un valor a otro. La declaracin de una matriz que hemos utilizado anteriormente es la versin simplificada de la misma, en la que slo se asignan valores. Por ejemplo, sta sera una forma igualmente vlida de declarar la misma matriz, pero asociando palabras en lugar de nmeros a cada valor:

Operador bsico de asignacinEditar seccinYa hemos trabajado con el operador de asignacin, el signo igual, en expresiones como:

En dicha expresin, lo que est a la derecha del operador de asignacin, el signo igual, se guarda en lo que esta a la izquierda.Operadores aritmticosEditar seccinSon los que aprendimos a utilizar en la escuela, para sumar, restar, multiplicar y dividir: suma: +. resta: -. multiplicacin: *. divisin: /.Combinando estos operadores con el operador de asignacin podemos comenzar a realizar tareas verdaderamente tiles, como la suma de dos nmeros:

Tambin podemos guardar esos valores en variables y posteriormente realizar la suma:

Existen unos operadores que combinan las asignaciones con los operadores aritmticos. Utilizando uno de estos operadores podemos volver a escribir el fragmento de cdigo anterior de esta forma:

Lo mismo puede aplicarse al resto de operadores aritmticos, con lo que disponemos de-=,*=y/=. Podramos considerarlos como operadores extendidos de asignacin.Operadores de comparacinEditar seccinNos permiten comparar dos valores. Nos basaremos en estas comparaciones para tomar decisiones en nuestro cdigo. El resultado de utilizar este operador es un valor booleano:

Slo cuando el resultado de la comparacin sea verdadero se mostrar un uno.Operadores lgicosEditar seccinOperan con valores booleanos, devolviendo TRUE o FALSE dependiendo de si se cumple una condicin o no. Veremos cuatro operadores lgicos:and,or,xorynot. El resultado de utilizarandsobre dos valores slo es TRUE si los dos valores sobre los que se est realizando la operacin son TRUE:

A diferencia del operador and, el resultado de utilizarorsobre dos valores slo es FALSE si los dos valores sobre los que se est realizando la operacin son FALSE:

El operadorxordevuelve TRUE cuando los dos valores son distintos:

El operadornot (!)es un operador unario, puesto que se aplica a una sola variable:

Operadores de incrementoEditar seccinY tambin de decremento. Gracias a estos operadores podemos simplificar operaciones como stas:

Que son equivalentes a las siguientes:

Aunque ayudan a simplificar, en ocasiones pueden complicarlo todo. PHP nos deja situar estos operadores antes y despus de la variable a la que modifican, pero dependiendo de dnde los coloquemos el resultado puede variar:

Operadores de concatenacinEditar seccinLa operacin ms importante que puede realizar sobre una cadena es la concatenacin: unir dos cadenas para formar una sola. El operador de concatenacin es el punto:

El resultado de esta operacin es la cadena "Esto es una cadena.". Igual que en las operaciones aritmticas, podemos combinar una concatenacin con una asignacin para simplificar el cdigo:

El resultado ser el mismo en ambos casos.Precedencia de operadoresEditar seccinDebemos estar siempre seguros del orden en el que PHP realizar las operaciones que le indiquemos. Lo estamos ahora? Cul ser el resultado de esta operacin?

Contendr 10? Contendr 8? Depende de la precedencia que tengan los operadores. En este caso concreto, el resultado ser 8, porque el operador de multiplicacin tiene prioridad sobre el de suma. Podemos modificar la precedencia de los operadores utilizando parntesis para envolver las operaciones que queremos realizar antes. La operacin anterior puede ser modificada para obtener 10 como resultado:

PHP realizar primero la operacin que est entre parntesis.Cambios de tipoEditar seccinComo resultado de las diferentes operaciones que realicemos sobre las variables, es posible que modifiquemos el tipo de alguna de ellas:

Cul ser el resultado de estas operaciones? Vamos a ayudarnos de la funcingettype(), que recibe como argumento el nombre de una variable y devuelve una cadena de texto que contiene el tipo de la variable pasada:

Como puede comprobar, antes de la concatenacin$ies de tipo entero (integer), pero despus pasa a ser de tipo cadena (string). Para liar an ms las cosas, resulta que tambin podemos hacer esto otro:

Y hemos cambiado el tipo de una variable que era una cadena a un entero. Otra de las caractersticas de PHP es forzar el tipo de las variables. Podemos obligar a que una variable de un tipo determinado se comporte como una de otro tipo con solo indicar entre parntesis y antes de la variable el tipo que deseamos:

Tenga precaucin, sin embargo. En el ejemplo anterior$enterocontendr el valor entero 10, pero si$cadenahubiese contenido la cadena "texto", el resultado sera que$enterocontendra el valor 0:

Instrucciones de control condicionalesEditar seccinEl siguiente es un ejemplo de utilizacin de la instruccin condicionalif:

Podemos mejorar este pequeo programa utilizandoelsejunto con if. As podemos indicar la accin a seguir en caso de que la condicin no se cumpla:

Lo que puede ampliarse utilizandoelseif:

Las instrucciones condicionales pueden anidarse, es decir, pueden escribirse unas dentro de otras, gracias a lo que podemos volver a escribir el cdigo anterior as:

Las llaves ({}) nos permiten asociar grupos de lneas a cada parte de la condicin:

Utilizando instrucciones if y else podemos complicar el programa anterior todo lo que queramos, por ejemplo comprobando la hora y escribiendo mensajes en funcin de la misma. Por ejemplo, para informar de que a las 9 de la maana entramos a trabajar, a las 14 salimos a comer, a las 16 volvemos a entrar y a las 19 nos vamos para casa escribiramos el siguiente cdigo:

PHP nos proporciona otra instruccin condicional que permite escribir un programa equivalente al anterior, pero de forma ms clara: la instruccinswitch. Incluso podemos indicar qu hacer en caso de que no se cumpla ninguna de las condiciones:

Instrucciones de control iterativas: forEditar seccinLa instruccin for permite ejecutar un bloque de instrucciones un nmero concreto de veces. El siguiente fragmento de cdigo contiene un bucle for que se ejecuta tres veces. Cada vez que lo hace, escribe el mismo texto:

El siguiente es un ejemplo mucho ms vistoso de bucle for:

Un bucle for puede utilizarse para recorrer todos los elementos de una matriz y mostrar su contenido. En este caso nos ayudaremos de las funcionescurrentynext. La primera nos permite obtener el valor del elemento actual de la matriz, la segunda avanza una posicin dentro de la matriz:for ($i = 1; $i Instrucciones de control iterativas: whileEditar seccinPodemos crear un bucle de este tipo que retenga el control mientras que, dentro de la hora, el segundo en el que nos encontremos no sea cero:

Existe otra variante de este bucle, que sigue las mismas premisas que el anterior, pero con algunas salvedades que comprenderemos mejor con un ejemplo:

Debemos utilizardo whilecuando queramos que el cuerpo del bucle se ejecute al menos una vez, ywhileen caso contrario.Es posible que los ejemplos anteriores provoquen un error si el tiempo mximo de ejecucin definido en php.ini es inferior a 60 segundos. Puede modificar ese valor a travs de la variablemax_execution_time.Salida de buclesEditar seccinEs posible alterar el flujo de la ejecucin de un bucle mediante algunas instrucciones especiales:breakycontinue. La primera de ellas,break, puede utilizarse para detener la ejecucin de los bucles for, foreach, while y do while:

Por otra parte, podemos utilizarcontinuecuando queramos saltar el resto de lneas de cdigo asociadas a un bucle y continuar con la siguiente iteracin:

Como resultado, el cdigo anterior slo mostrar in-formacin sobre los meses de enero, febrero y abril.