🎃 Grandes descuentos en libros en línea, eformaciones y vídeos*. Código CALABAZA30. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. PHP 8
  3. Introducción a PHP
Extrait - PHP 8 Desarrolle un sitio web dinámico e interactivo (2a edición)
Extractos del libro
PHP 8 Desarrolle un sitio web dinámico e interactivo (2a edición) Volver a la página de compra del libro

Introducción a PHP

¿Qué es PHP?

PHP es un lenguaje de script (secuencia de comandos) que se ejecuta del lado del servidor; el código PHP se incluye en una página HTML normal. Por lo tanto, se puede comparar con otros lenguajes de script que se ejecutan según el mismo principio: ASP (Active Server Pages), JSP (Java Server Pages) o PL/SQL Server Pages (PSP).

A diferencia de un lenguaje como JavaScript, donde el código se ejecuta del lado del cliente (en el explorador), el código PHP se ejecuta del lado del servidor. El resultado de esta ejecución se incrusta en la página HTML, que se envía al navegador. Este último no tiene conocimiento de la existencia del procesamiento que se ha llevado a cabo en el servidor.

Esta técnica permite realizar páginas web dinámicas cuyo contenido se puede generar total o parcialmente en el momento de la llamada de la página, gracias a la información que se recopila en un formulario o se extrae de una base de datos.

Ejemplo sencillo de página PHP

<!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> 
    <?php  
    echo '<p>¡Hola Olivier!</p>';...

Estructura básica de una página PHP

1. Las etiquetas PHP

Como hemos visto anteriormente, el código PHP se incluye en una página HTML dentro de las etiquetas (también conocidas por su término en inglés, tags).

PHP acepta dos sintaxis para las etiquetas:

  • <?php ... ?>

  • <? ... ?>

La primera es la sintaxis habitual y la más recomendada.

La segunda sintaxis solo es posible si está permitida en el archivo de configuración de PHP (php.ini) poniendo la directiva short_open_tag en on. No es aconsejable utilizar esta sintaxis si el código debe desplegarse en un servidor cuya configuración no puede modificar y que no es compatible con 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 tanto, incluir texto en la página HTML que se envía al explorador.

Sintaxis

echo(cadena de texto) 
echo cadena de texto[,...] 

texto: texto que se mostrará.

La primera sintaxis únicamente 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 ','Valeria','!'; 
    ?> 
    </p> 
  </body> 
</html> 

Resultado

¡Hola Olivier! 
¡Hola Valeria! 

No hay salto de línea automático en el resultado de la ejecución del código PHP. Si es necesario, se debe insertar la etiqueta HTML <br />, que provoca un salto de línea en la página HTML final (véase el ejemplo anterior).

El texto configurado en la función echo se puede escribir en varias líneas en la fuente, pero se muestra solo...

Configuración de PHP

1. El archivo de configuración php.ini

A lo largo de este libro nos encontramos con varias directivas de configuración que se utilizan para modificar el comportamiento de PHP.

Estas directivas de configuración se introducen en el archivo de configuración de PHP (php.ini).

PHP dispone de dos archivos php.ini de muestra: php.ini-development y php.ini-production.

El archivo php.ini-development es un ejemplo de un archivo de configuración especialmente destinado a su uso en un entorno de desarrollo. Por el contrario, el archivo php.ini-production está especialmente destinado a su uso en un entorno operativo y contiene la configuración de PHP más segura o de mejor rendimiento.

Ambos archivos presentan multitud de comentarios que explican el papel de cada directiva y ofrecen consejos sobre su uso.

Para utilizar uno de estos archivos, cópielo a la ubicación apropiada de su plataforma y cámbiele el nombre a php.ini. El archivo php.ini se encuentra normalmente en los siguientes lugares (en este orden):

  • Una ubicación específica en el servidor web (por ejemplo, la directiva PHPIniDir de Apache 2).

  • Un lugar definido por la variable de entorno PHPRC.

  • La carpeta /usr/local/lib en Linux/Unix y c:\windows o c:\winnt en Windows.

Con Apache, también es posible definir directivas de configuración de PHP en el archivo de configuración de Apache (por ejemplo...

Utilizar PHP desde la línea de comandos

Es posible utilizar PHP desde la línea de comandos. Este modo de funcionamiento no requiere un servidor web y se utiliza, por ejemplo, para el desarrollo de secuencias de comandos administrativas.

Sintaxis simplificada

php [opciones] [script] 

Donde

opciones

Opciones en la línea de comandos (por ejemplo, -h para obtener la ayuda, -v para la versión, etc.).

script

El archivo que contiene el código PHP que se va a ejecutar.

Ejemplo

# php -v 
PHP 8.2.3 (cli) (built: Feb 28 2023 17:22:24) (NTS) 
Copyright (c) The PHP Group 
Zend Engine v4.2.3, Copyright (c) Zend Technologies 
 
## php script.php Olivier 
¡Hola Olivier! 

Contenido del script script.php:

<?php 
// mostrar un mensaje simple 
// utilizando el parámetro 
// pasado en la línea de comandos 
echo "¡Hola $argv[1]!\n"; 
?> 

PHP en línea de comandos ofrece también un pequeño servidor web que se puede utilizar para el desarrollo. Este servidor web integrado se puede iniciar de la siguiente manera:

php -S servidor:puerto [-t ruta] 

servidor

Nombre o dirección IP del servidor.

puerto

Puerto de escucha.

ruta

Directorio raíz de los documentos (directorio actual predefinido).

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 un área de memoria identificada por un nombre que contiene un valor que el programa puede leer pero no modificar.

Sintaxis

booleano define(cadena nombre, mixto valor[, booleano case insensible]) 
const nombre = valor 

nombre

Nombre de la constante (véase la sección Estructura básica de una página PHP - Reglas para los nombres, en este capítulo).

valor

Valor de la constante.

case_insensible

Indica si el nombre de la constante distingue entre mayúsculas y minúsculas (TRUE) o no (FALSE - valor predefinido, único valor autorizado a partir de la versión 8).

La función define devuelve TRUE en caso de éxito y FALSE en caso de error.

Cualquier tipo de dato escalar (véase la sección Las bases del lenguaje PHP - Tipos de datos de este capítulo) o de tipo matriz (ver la sección Las bases del lenguaje PHP - Matrices de este capítulo) se puede usar como tipo de dato de una constante.

El nombre de una constante no puede comenzar con un $, ya que este prefijo está reservado para el nombre de las variables (véase la sección Las bases del lenguaje PHP - Variables, en este capítulo). Definir una constante cuyo nombre comienza por $ no genera un error (define devuelve TRUE). Sin embargo, cuando se utiliza, la constante se verá como una variable no inicializada.

Con la función define, el valor de la constante se puede definir con la ayuda de una expresión que utiliza valores literales, constantes, variables, operadores o llamadas de funciones.

Con la palabra clave const, también es posible definir el valor de la constante con la ayuda de una expresión, pero que utiliza únicamente valores literales, constantes y operadores (no llamadas de función ni variables).

A partir de la versión 8.1, en las dos sintaxis, el valor de una constante puede ser también un objeto instanciado con el operador new (ver la sección Clases en el capítulo Escribir funciones y clases PHP).

Una vez creada, una constante no se puede cambiar, ni por una nueva llamada a define (devuelve FALSE, genera un error de nivel E_WARNING y deja el valor de la constante inalterado), ni por asignación...