Académique Documents
Professionnel Documents
Culture Documents
2: Fundamentos de la
insercin de cdigo en pginas
web
Contenidos
Lenguajes y tecnologas de servidor.
Breve historia de PHP.
Obtencin del lenguaje de marcas para mostrar en el
cliente.
Etiquetas para insercin de cdigo.
Tipos de datos. Conversiones entre tipos de datos.
Variables.
Tomas de decisin.
Bucles.
Aplicaciones ejecutables
Aade iteraccin
Permite transferir informacin entre servidor web y un
programa externo.
Corre en el servidor cuando el usuario lo solicita.
En servidores compartidos era el propietario el responsable
de elegir qu CGIs instalar
Contadores de visitas
Recolectores de datos de formularios para enviarlos a una
direccin de correo electrnico
pginas web.
Evita la compilacin
Evita la instalacin
Cdigo abierto
Zend
Codificacin Unicode
Ms complejo de lo esperado
Tensin entre los desarrolladores por los retrasos
respuesta
BD
HTML
Servidor
WEB
Intrprete
de PHP
php.ini
Fichero de configuracin del servidor Apache:
httpd.conf
nombre php.ini.
Las instrucciones del fichero se denominan directivas.
http://php.net/manual/es/migration53.ini.php
Directivas de PHP.ini
http://www.php.net/manual/es/ini.list.php
Funciones que quedaron obsoletas en PHP 5.3.x
http://php.net/manual/es/migration53.deprecated.php
valor.
Las directivas que comienzan por ; estn comentadas y
son ignoradas por el motor del intrprete.
Para indicar las rutas dentro del fichero se utilizan los
formatos:
C:\directorio\directorio
\directorio\directorio
/directorio/directorio/
servidor web.
ASP.
<%
Instrucciones PHP
%>
implica un ;
Comentarios (como en C):
/* */
//
#
varias lneas
una lnea
Comentario estilo shell para una lnea
caracteres.
echo 'Este texto se mostrar.';
echo exactamente igual que este;
Si queremos mostrar comillas simples (o dobles) como parte de la
salida, debemos utilizar comillas dobles (o simples) como
delimitadores de la cadena.
echo 'Este texto lleva comillas dobles.';
echo Este texto lleva 'comillas simples'.;
Escapar las comillas para que no se consideren limitadores
(utilizar la barra invertida (\).
echo Este texto lleva \comillas dobles.;
Incluir otros caracteres especiales dentro de una cadena de caracteres
Tipos de datos
PHP soporta los tipos de datos primitivos:
Nmeros enteros
Nmeros en coma flotante
Cadenas de caracteres
Booleanos
Objetos
Recursos
NULL
El tipo de una variable no se suele especificar. Se decide
Tipos de datos
negativos
$var = 20;
$var = -20;
$var = 024; $var = -024;
$var = 0x14; $var = -0x14;
// asignacin decimal
// asignacin octal
// asignacin hexadecimal
Tipos de datos
Funciones de inters:
La funcin gettype() devuelve el tipo de una variable
$var=Hola;
echo gettype($var);
$var=5;
If (is_string($var))
{echo Si;}
else
{echo No;};
La funcin var_dump() muestra el tipo y el valor de una variable. Es especialmente interesante con los arrays.
$var=array(5,0.0,Hola,false);
var_dump($var);
Tipos de datos
Tipo string:
Las cadenas se encierran entre comillas simples o dobles
Tipos de datos
Tipo string:
Otra forma de inicializar cadenas es utilizar la sintaxis heredoc (PHP 4) y nowdoc (PHP 5.3) que utilizan el smbolo de
documento incrustado (<<<) y un identificador para marcar el final del documento.
El texto heredoc se comporta como un string entre comillas dobles, pero sin tener comillas dobles.
$nroPeras =3;
$nroManzanas=2;
echo <<<FIN
Tengo $nroPeras peras y
$nroManzanas manzanas
FIN;
Despus del operador <<<, se deber proporcionar un identificador y justo despus una nueva lnea. A continuacin va el propio string, y
para cerrar la notacin se pone el mismo identificador.
El identificador de cierre debe empezar en la primera columna de la nueva lnea. Asimismo, el identificador debe seguir las mismas reglas
de nomenclatura de las etiquetas en PHP.
Es importante no escribir ningn carcter, salvo \n, antes y despus del identificador de cierre de la cadena.
Tipos de datos
Ejemplos de inicializacin de cadenas:
$a = 9;
print a vale $a\n;
// muestra a vale $a\n (' no admite \n)
print a vale $a\n;
// muestra a vale 9 y avanza una lnea
print <IMG SRC=logo.gif>;
// muestra <IMG SRC=logo.gif>
print <IMG SRC=\logo.gif\>; //muestra <IMG SRC=logo.gif>
$nombre=Pepe;
$var = <<<xxx
// Sintaxis heredoc
Esta es una cadena que termina al encontrarse xxx. $nombre
xxx;
// Muestra:
// Esta es una cadena que termina al encontrarse xxx. Pepe
Variables
Las variables siempre van precedidas de un signo $
El nombre es sensible a las maysculas
Comienzan por letra o subrayado, seguido de letras, nmeros o subrayado
Adems de las variables definidas por el programador, existen gran
Declaracin de Variables
PHP es flexible en lo que se refiere a la declaracin de las
variables.
No hace falta declarar una variable antes de utilizarla
Una variable no se define como perteneciente a un tipo de
dato determinado
El tipo de una variable puede cambiar segn los valores que
contenga durante la ejecucin del programa.
El ltimo valor asignado es el que define el tipo de la variable.
PHP aplica una asignacin de dato predeterminado que
consiste en asignar el dato 0 a las variables que intervienen en
operaciones matemticas, y una cadena vaca a las variables
que intervienen en operaciones con cadenas de caracteres.
Declaracin de Variables
Ejemplos :
<?php
$Cadena = "Tipo de dato de cadena";
$NmeroEntero = 1;
// Un valor entero
$NmeroFlotante = 1.55;
// Un valor numrico con decimales
$Booleano = True;
// Un valor booleano True (1) o False (0)
$Matriz[0]= "A";
// Un valor de matriz con subndice 0
$Matriz[2] = 3;
// Un valor de matriz con subndice 2
$NmeroOctal = 012;
// Un nmero octal 12 es decimal 10
$NmeroHexadecimal = 0x1C; //Un nmero hexadecimal 1c igual a decimal 28
$NmeroNegativo = -33; // Los nmeros negativos llevan el signo adelante
$NmeroFlotanteExp = 1.55e3;
echo $Cadena;
echo $NmeroEntero;
echo $NmeroFlotante;
echo $Booleano;
echo $Matriz[0];
echo $Matriz[2];
echo $NmeroOctal;
echo $NmeroHexadecimal;
echo $NmeroNegativo;
echo $NmeroFlotanteExp;
?>
// el resultado es 3
// el resultado es 14 flores
queremos.
PHP permite otras conversiones implcitas de tipos :
(int) : Fuerza la conversin a entero. (int) $var
Variable de variables
Se pueden crear nombres de variables dinmicamente
anteponiendo $$ a una variable.
La variable variable toma su nombre del valor de otra variable
previamente declarada.
Ejemplo:
<?php
$var = uno;
$$var = dos;
print ($var); // produce el texto: uno
print ($uno); // produce el texto: dos
print ($$var);
// produce el texto: dos
print (${$var});
Variables variable
Ejercicio 1. Comprueba el funcionamiento del programa
<?PHP
$mensaje_es="Hola";
$mensaje_en="Hello";
$idioma = "es";
$mensaje = "mensaje_" . $idioma;
print $$mensaje;
?>
Variables variable
Ejercicio 2. Comprueba el funcionamiento del programa
<?PHP
$mensaje_es="Hola";
$mensaje_en="Hello";
$idioma = "en";
$mensaje = "mensaje_" . $idioma;
print $$mensaje;
?>
palabra global.
Tambin las podemos definir como globales asignndolas a la
matriz superglobal $GLOBALS.
Si queremos mantener el valor de una variable local en las
sucesivas llamadas a la funcin hay que definirla como static.
Constantes
Una constante es un identificador de un dato que no cambia de
No llevan $ delante
La funcin defined(PI) devuelve TRUE si existe la constante.
Son siempre globales por defecto.
Slo se pueden definir constantes de los tipos escalares
Constantes predefinidas
Dependen de las extensiones que se hayan cargado en el
servidor, aunque hay constantes predefinidas que siempre
estn presentes :
PHP_VERSION: Indica la versin de PHP que se est utilizando.
PHP_OS: Nombre del sistema operativo que ejecuta PHP.
TRUE
FALSE
E_ERROR: Indica los errores de interpretacin que no se pueden
recuperar.
E_PARSE: Indica errores de sintaxis que no se pueden recuperar.
E_ALL: Representa a todas las constantes que empiezan por E_.
Variables en la URL
Un mecanismo prctico aunque no muy seguro de intercambio de
If ($_GET [ id ] == 24) {
..
}
Expresiones y operadores
Operadores aritmticos:
Expresiones y operadores
Operador de identidad === : Compara tambin el tipo de las
variables.
Operador de control de error: @
<?php
$var1=3; $var2=0;
$huboerror=no se produce resultado por error;
$nohuboerror=variable con valor;
@$resultado = $var1/$var2;
echo (empty($resultado))? $huboerror : $nohuboerror;
Operadores lgicos:
Precedencia de operadores
Asociatividad
Operadores
++ -Instanceof
!
* / %
+ - .
< <= > >=
== != === !===
&&
||
?:
= += -= *= /= .= %=
and
or
<HTML>
<HEAD>
<TITLE>Ttulo</TITLE>
<?PHP
// Incluir bibliotecas de funciones
require ("conecta.php");
require ("fecha.php");
require ("cadena.php");
require ("globals.php");
?>
</HEAD>
<BODY>
<?PHP
include ("cabecera.html");
?>
// Cdigo HTML + PHP
. . .
<?PHP
include ("pie.html");
?>
</BODY>
</HTML>
variable.
En PHP 4 las variables no se pasan por referencia salvo que se
emplee el smbolo &.
En este cdigo, al contenido (5) de
variable y no su contenido.