¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. PHP 7
  3. Introducción a PHP
Extrait - PHP 7 Desarrollar un sitio web dinámico e interactivo (2ª edición)
Extractos del libro
PHP 7 Desarrollar un sitio web dinámico e interactivo (2ª edición) Volver a la página de compra del libro

Introducción a PHP

¿Qué es PHP?

PHP es un lenguaje de script 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).

En la versión 7, 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.

Antes de la versión 7, PHP aceptaba dos sintaxis adicionales para las etiquetas:

  • <script language="php"> ... </script>

  • <% ... %>

La primera sintaxis, más pesada, utilizaba la etiqueta estándar script; podía ser útil si su editor HTML interpretaba de forma incorrecta el resto de la sintaxis.

La segunda sintaxis permitía utilizar la etiqueta ASP, pero solo era factible si estaba señalado en el archivo de configuración de PHP estableciendo la directiva asp_tags en on. Este parámetro ya no existe en la versión 7.

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" />  
 </head> 
 <body> 
   <p> 
   <?php 
   echo('¡Hola Olivier!'); 
   ?> 
   <br /> 
   <?php 
   echo '¡Hola ','Valeria','!'; 
   ?> 
   </p> 
 </body> ...

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 especialmente 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] 

Con

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 7.2.5 (cli) (built: May 10 2018 10:42:48) (NTS) 
Copyright (c) 1997-2018 The PHP Group 
Zend Engine v3.2.0, Copyright (c) 1998-2018 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 por defecto).

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 legible, pero no modificable en el programa.

Sintaxis

booleano define(cadena nombre, mixto valor[, booleano sensible_mayúsculas]) 
const nombre = valor 

nombre

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

valor

Valor de la constante.

sensible_mayúsculas

Indica si el nombre de la constante distingue entre mayúsculas y minúsculas (TRUE - valor predeterminado) o no (FALSE).

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, en este capítulo) se puede utilizar como tipo de datos de una constante. También es posible definir una constante de tipo matriz utilizando la palabra clave const desde la versión 5.6 y con la función define desde la versión 7 (ver la sección Las bases del lenguaje PHP - Matrices, en este capítulo).

El nombre de una constante no puede comenzar con un $, ya que este prefijo está reservado al 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.

Desde la versión 5.6, 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).

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

Ejemplo

<?php  
// Definir una constante...