El lenguaje PHP¶
El acrónimo PHP tiene una historia interesante. Originalmente, PHP significaba "Personal Home Page," ya que fue creado en 1994 por Rasmus Lerdorf como un conjunto de herramientas para crear y mantener páginas web personales. Con el tiempo, PHP evolucionó hacia un lenguaje de programación más completo para el desarrollo web dinámico, y su nombre fue reinterpretado como un acrónimo recursivo de "PHP: Hypertext Preprocessor."
La idea del acrónimo recursivo es un tipo de juego de palabras que es común en la cultura de programación (otro ejemplo famoso es GNU, que significa "GNU's Not Unix"). Aunque pueda parecer confuso, es una convención divertida y se utiliza para hacer énfasis en su funcionalidad de "preprocesador" de hipervínculos o hipermedios. Esto significa que PHP procesa el contenido antes de que llegue al navegador, generando el HTML resultante en función de la lógica del servidor.
Una página PHP es una página web normal en la que utilizamos la extensión .php
en lugar de .jsp
o .html
.
En una página .php
se pueden insertar bloques de código escrito en lenguaje PHP. Estos bloques de código reciben el nombre de scripts. Un script PHP scomienza con los símbolos <?php
antes de la primera instrucción y termina con los símbolos ?>
después de la última instrucción.
El siguiente fragmento de código, muestra gran cantidad de información sobre el estado actual de PHP. Por temas de seguridad, este script no es recomendable dejarlo en nuestros proyectos por la información que da de nuestra configuración.
<?php
phpinfo();
Curiosidades¶
- Acrónimo de Personal Home Page que luego derivó en Hypertext Preprocessor.
- Lenguaje de propósito general, aunque su fuerte es el desarrollo web.
- Sintaxis similar a C / Java
- El código se ejecuta en el servidor (en Apache mediante mod_php y en NGINX mediante PHP-FPM1)
- El cliente recibe el resultado generado tras interpretar el código en el servidor.
- La última versión es la 8.3.12.
Su documentación es extensa y está traducida.
Código embebido¶
Los bloques de código se escriben entre <?php
y ?>
, mientras que las sentencias se separan mediante ;
.
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>PHP fácil</title>
</head>
<body>
<!-- Muestra una frase con HTML -->
Hola mundo<br>
<!-- Muestra una frase con PHP -->
<?php echo "Es muy fácil programar en PHP."; ?>
</body>
</html>
Sólo etiquetas de apertura
Si nuestro archivo sólo va a contener código PHP y nada de HTML, como por ejemplo cuando codifiquemos clases o interfaces, solo utilizaremos la etiqueta de apertura (<?php
), indicando que es un archivo de PHP puro, tal y como hemos visto en el fichero phpinfo.php
.
Generando contenido¶
Tenemos tres maneras de generar contenido en nuestros documentos PHP:
echo expresión;
print (expresión);
<?= expresión ?>
Usaremos echo
dentro de un bloque de instrucciones y <?=
cuando solo queramos mostrar el valor de una variable dentro de un fragmento HTML.
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Echo y print</title>
</head>
<body>
<p><?php echo "Este texto se mostrará en la página web." ?></p>
<p><?= "Este texto se mostrará en la página web." ?></p>
<p><?php print("Este texto se mostrará en la página web.") ?></p>
</body>
</html>
Comentarios¶
Podemos utilizar comentarios de una línea o de bloque:
<?php
// Este es un comentario de una sola línea
/*
Este es
un comentario
que ocupa
varias líneas
*/
?>
Errores¶
Si hay un error de ejecución, se produce un Fatal Error. Es importante leer bien el mensaje recibido para saber qué está fallando y poder solucionar los errores, ya que siempre nos indican la traza del fallo y lo que está fallando.
Fatal error: Uncaught Error: Call to undefined function plint() in C:\xampp\htdocs\202echo.php:11
Stack trace:
#0 {main}
thrown in C:\xampp\htdocs\202echo.php on line 11
Desde PHP 5, los errores se lanzan como excepciones. Más adelante veremos el uso de try
y catch
Actividad¶
-
AC 201. (RA2 / CE2a CE2d / IC1 / 3p) - El Supervisor Técnico (CTO) solicita una prueba en PHP para saber si se siguen buenas prácticas de desarrollo. Utilizando el entorno local de trabajo que se montó en la AC 103, solicita que se muestren 3 frases, cada una en un párrafo utilizando las tres posibilidades que existen de mostrar contenido.
Además, se ha de documentar haciendo uso de los distintos tipos de comentarios vistos.
-
siglas que responden a PHP FastCGI Process Manager. ↩