Introducción a PHP
¿Qué es PHP?
PHP es un lenguaje de script que se ejecuta en el lado del servidor, cuyo código se incluye en una página HTML clásica. Puede compararse por tanto a otros lenguajes de script que funcionan según el mismo principio: ASP (Active Server Pages)o JSP (Java Server Pages).
A diferencia de un lenguaje como el JavaScript, en el que el código se ejecuta en el lado del cliente (en el explorador), el código PHP se ejecuta en el lado del servidor. El resultado de esta ejecución se integra en la página HTML, que es enviada al explorador. Este último no tiene conocimiento alguno del tratamiento realizado en el servidor.
Esta tecnología permite realizar páginas web dinámicas cuyo contenido puede ser completa o parcialmente generado en el momento de la invocación de la página, gracias a la información obtenida en un formulario o extraída de una base de datos.
Ejemplo simple de página PHP:
<!DOCTYPE html >
<html xmlns=http://www.w3.org/1999/xhtml lang="es">
<head>
&l ...
Estructura básica de una página PHP
1. Las marcas PHP
Como hemos visto anteriormente, el código PHP se incluye en la página HTML delimitado por marcas o etiquetas (tags).
PHP admite dos formas de delimitación:
-
<?php ... ?>
-
<? ... ?>
La primera es la forma habitual, recomendada.
La segunda solo se debe considerar si ha sido autorizada en el archivo de configuración de PHP (php.ini) estableciendo la directiva short_open_tag en on. Se desaconseja utilizar esta sintaxis si su código se debe desplegar en un servidor donde no domine la configuración y no soporte esta sintaxis.
Si el script solo contiene código PHP, la etiqueta de cierre se puede omitir.
2. La función echo
La función echo es la función básica de cualquier página PHP. Permite mostrar una o varias cadenas y, por lo tanto, incluir texto en la página HTML enviada al explorador.
Sintaxis
echo(cadena de texto)
echo cadena de texto[,...]
texto |
Texto que debe mostrarse. |
La primera sintaxis solo acepta un parámetro, mientras que la segunda acepta varios.
Ejemplo
<!DOCTYPE html
<html xmlns="http://www.w3.org/1999/xhtml” lang=“es”>
<head>
<meta charset=utf-8" />
<title>Ejemplo de página PHP</title>
</head>
<body>
<p>
<?php
echo('¡Hola Olivier!');
?>
<br />
<?php
echo '¡','Hola','Daniel','!';
?>
</p>
</body>
</html>
Resultado
¡Hola Olivier!
¡Hola Daniel!
No hay salto de línea automático en el resultado de la ejecución del código PHP. Si es necesario, hay que insertar la etiqueta HTML <br />, que fuerza el salto de línea en la página HTML final (véase el ejemplo anterior).
El texto pasado como parámetro a la instrucción echo puede escribirse en varias líneas en la página original, pero se muestra en una sola en el resultado.
También es posible insertar texto en la página HTML, utilizando el operador = inmediatamente...
Configuración de PHP
1. El archivo de configuración php.ini
A lo largo de este libro, iremos viendo varias directivas de configuración que puede utilizar para modificar el comportamiento de PHP.
Estas directivas se definen en el archivo de configuración de PHP (php.ini).
PHP facilita dos ejemplos de archivo php.ini: php.ini-dist y php.ini-production.
El archivo php.ini-dist es un ejemplo de archivo de configuración, destinado sobre todo a un entorno de desarrollo. Por el contrario, el archivo php.ini-production está más bien destinado a emplearse en un entorno operativo; contiene ajustes que mejoran la seguridad o el rendimiento de PHP.
Estos dos archivos contienen un gran número de comentarios que explican la función de cada directiva y dan consejos sobre su uso.
Para utilizar uno de estos archivos, cópielo en la ubicación apropiada de su plataforma y cambie el nombre a php.ini. El archivo php.ini se busca principalmente en los siguientes lugares (en este orden):
-
Una ubicación específica en el servidor web (por ejemplo, la directiva PHPIniDir de Apache 2).
-
Una ubicación definida por la variable de entorno PHPRC.
-
La carpeta /usr/local/lib o /etc en Linux/Unix y c:\windows o c:\winnt en Windows.
En este libro, y salvo que indiquemos lo contrario, supondremos que dos directivas relativas a la gestión de los errores y una relativa al huso horario predeterminado se ajustan...
Las bases del lenguaje PHP
1. Constantes
a. Definición
La función define o la palabra clave const permiten definir una constante.
Una constante es una zona de memoria identificada con un nombre, que contiene un valor legible, pero no modificable en el programa.
Sintaxis
booleano define(cadena nombre, mixto valor[, booleano no
distingue_mayús_minús)
const nombre = valor
nombre |
Nombre de la constante (véase en este capítulo Estructura básica de una página PHP - Reglas para los nombres). |
valor |
Valor de la constante. |
No_distingue_ mayús_minús |
Indica si el nombre de la constante no tiene en cuenta las minúsculas/mayúsculas (TRUE) o no (FALSE - valor predeterminado, único valor autorizado desde la versión 8). |
La función define devuelve TRUE en caso de éxito y FALSE en caso de error.
Cualquier tipo de datos escalar (véase en este capítulo Las bases del lenguaje PHP - Tipos de datos) o de tipo tabla (véase en este capítulo Las bases del lenguaje PHP - Tablas) puede utilizarse como tipo de datos de una constante. Desde la versión 8.1, el valor de una constante puede ser un objeto instanciado con el operador new (véase en el capítulo Escribir funciones y clases PHP - Clases).
El nombre de una constante no debe comenzar por $, ya que este prefijo se reserva para los nombres de las variables (véase en este capítulo Las bases del lenguaje PHP - Variables). Nótese que definir una constante, cuyo nombre comienza por $, no genera error (¡define devuelve TRUE!), pero, en el uso, se identificará la constante como una variable no inicializada.
Con la función define, el valor de la constante se puede definir con una expresión que usa valores literales, constantes, variables, operadores o llamadas a funciones.
Con la palabra clave const, también es posible definir el valor de la constante con una expresión, pero que usa solo valores literales, constantes y operadores (no llamadas a función ni variables).
Una vez definida, una constante ya no puede ser modificada a continuación, ni por una nueva invocación a define (devuelve FALSE,genera una alerta de nivel E_WARNING y deja el valor de la constante igual), ni por una asignación directa con la palabra clave const (genera un error de nivel E_WARNING y no cambia el valor de la constante)....