0.1¿Qué es PHP? Su papel
Lo esencial en 30 segundos
- PHP = lenguaje del lado del servidor para la web: se ejecuta en el servidor, nunca en el navegador, y genera HTML.
- Ciclo petición → PHP → HTML: cada solicitud de página repite el ciclo — el servidor ejecuta, el navegador muestra.
- El visitante nunca ve su código: solo recibe el HTML resultante — la lógica y la seguridad permanecen del lado del servidor.
Minicaso hilado — Riad sitúa su primera página dinámica
Riad, desarrollador web en Constantine, solo conoce el HTML estático y un poco de JavaScript. Su cliente le pide una página que muestre «Hola» con el nombre de cada visitante conectado. Riad descubre que PHP se ejecuta del lado del servidor: con cada petición, el servidor ejecuta su código, que genera un HTML personalizado, y el visitante solo recibe ese HTML — nunca el código. Anota en una ficha «petición → PHP → HTML» y elige su primera prueba: una página que muestre un nombre distinto según el usuario.
Caso autónomo de esta sección: reaparece en el curso, el esquema, el script y el reto 48h de la sección 0.1.
1. Un lenguaje del lado del servidor
PHP (PHP: Hypertext Preprocessor) es un lenguaje de programación del lado del servidor diseñado para la web. Dos mundos que distinguir: el lado del cliente (el navegador del usuario), que ejecuta HTML, CSS y JavaScript — lo que se muestra y se anima; y el lado del servidor (la máquina remota que aloja el sitio), que ejecuta la lógica: formularios, base de datos, autenticación. PHP vive del lado del servidor: cuando un visitante pide una página, el servidor ejecuta el código PHP, que produce HTML, y ese HTML — no el código — es lo que se envía al navegador. El visitante nunca ve su código PHP. Riad retiene la imagen: la cocina (servidor, invisible) prepara, la sala (navegador) solo ve el plato servido.
2. El ciclo petición → PHP → HTML
El ciclo que hay que retener absolutamente: petición → PHP → HTML. (1) El usuario pide una página (escribe una URL o hace clic en un enlace) — es la petición. (2) El servidor web recibe la petición, ve un archivo .php y lo confía al intérprete PHP, que ejecuta el código (cálculos, acceso a la base, lógica). (3) PHP genera HTML, que el servidor devuelve al navegador, que lo muestra. Con cada petición, este ciclo se repite — y la página producida suele estar personalizada (según el usuario, la hora, los datos): es una página dinámica, por oposición a una página HTML estática siempre idéntica. Riad lo comprende: su «Hola + nombre» no está escrito en duro, se genera con cada visita.
3. Un lenguaje masivamente utilizado y moderno
PHP impulsa una parte enorme de la web — incluido WordPress, que por sí solo mueve una inmensa proporción de los sitios — además de tiendas, CMS y aplicaciones de empresa, hasta grandes aplicaciones mediante frameworks como Laravel o Symfony (nivel 4). Es un lenguaje accesible (fácil para empezar), pragmático (hecho para producir sitios rápidamente) y maduro: las versiones modernas (PHP 8+) son potentes y ricas (tipado, programación orientada a objetos completa, excepciones). Su mala reputación viene de sus primeras versiones — el PHP moderno ya no tiene nada que ver. Riad lo anotó al pie de su ficha en Constantine: aprender PHP es invertir en un mercado vivo, con conceptos (servidor, base de datos, seguridad) transferibles a todas partes.
¿Lo sabía? La cocina invisible de la web
El servidor cocina, el navegador solo sirve.
🔎 Ejemplo concreto — 🔎 Ejemplo concreto — Estática vs dinámica
Una página que se adapta a cada visitante.
Bonjour " . $prenom . "";
// El navegador recibe ÚNICAMENTE este HTML, nunca este código
Lectura: Riad pide la página: el servidor ejecuta el código con el nombre del visitante y devuelve un HTML personalizado.
Lección: la misma URL produce un HTML distinto según el usuario — es una página dinámica; la lógica queda protegida del lado del servidor.
Vocabulario de la sección
- PHP
- Lenguaje de programación del lado del servidor diseñado para la web (PHP: Hypertext Preprocessor); se ejecuta en el servidor y genera HTML enviado al navegador.
Ejemplo sencillo: Riad escribe una página que muestra el nombre de cada visitante conectado en Constantine.
Lo que no es: un lenguaje que se ejecuta en el navegador del visitante.
Reflejo: ante una página personalizada, preguntar «¿qué genera aquí PHP?».
- Lado del servidor vs lado del cliente
- Servidor (PHP): ejecuta la lógica (formularios, base, autenticación) y genera las páginas. Cliente (navegador): muestra el HTML/CSS y ejecuta el JavaScript.
Ejemplo sencillo: Riad coloca la verificación de la contraseña del lado del servidor, y la animación del menú del lado del navegador.
Lo que no es: dos nombres para el mismo lugar.
Reflejo: colocar cada tratamiento en su lado: sensible = servidor, animación = cliente.
- Ciclo petición → PHP → HTML
- El usuario pide una página → el servidor ejecuta el código PHP → PHP genera HTML → el navegador lo muestra. Este ciclo se repite con cada petición.
Ejemplo sencillo: Riad recarga su página: cada vez, el servidor vuelve a ejecutar y regenera el HTML del día.
Lo que no es: una ejecución única al arrancar el servidor.
Reflejo: pensar «con cada petición, el ciclo se repite».
- Página dinámica
- Página generada por el servidor, a menudo personalizada (según el usuario, los datos); por oposición a una página HTML estática siempre idéntica.
Ejemplo sencillo: Riad muestra un perfil distinto para cada visitante en lugar de una página fija.
Lo que no es: un archivo HTML idéntico para todo el mundo.
Reflejo: en cuanto un contenido varíe, prever una generación del lado del servidor.
- Intérprete PHP
- El programa que ejecuta el código PHP en el servidor; el visitante nunca ve el código PHP, solo el HTML resultante.
Ejemplo sencillo: Riad instala el intérprete en local: sus archivos .php se ejecutan en lugar de mostrarse como texto.
Lo que no es: el navegador, que sabría leer el PHP.
Reflejo: si el código PHP se muestra en claro, es que falta el intérprete.
En la práctica — En la práctica — Situar PHP y su ciclo
- Retenga la naturaleza de PHP: un lenguaje DEL LADO DEL SERVIDOR (ejecutado en el servidor, no en el navegador) que genera HTML.
- Memorice el ciclo petición → PHP → HTML: con cada solicitud de página, el servidor ejecuta el código y devuelve el HTML resultante.
- Comprenda la diferencia con el JavaScript del lado del cliente: el visitante ve el HTML producido, nunca su código PHP.
- Sitúe los usos: páginas dinámicas y personalizadas (formularios, cuentas, datos), desde pequeños sitios hasta grandes aplicaciones (WordPress, Laravel, Symfony).
Script listo para decir — explicar PHP a un colega (30 s)
«PHP es nuestro lenguaje del lado del servidor: cuando un visitante pide una página, el servidor ejecuta nuestro código PHP, que genera un HTML personalizado, y el navegador solo muestra ese HTML. El visitante nunca ve nuestro código — por eso ponemos en él la lógica y la seguridad.»
Para decir mostrando el esquema del ciclo; insistir en «nunca el código, solo el resultado».
Modelo copiar-pegar — primera generación del lado del servidor
Bonjour " . $prenom . "";
echo "Page generee cote serveur.
";
Viniendo del HTML estático
Venía de páginas fijas: detecte lo que varía (nombre, fecha, contenido) y confíe exactamente esas partes a PHP, el resto sigue siendo HTML puro.
Viniendo de JavaScript
Animaba del lado del navegador: mantenga allí la interactividad visible y traslade a PHP todo lo que debe permanecer secreto (contraseñas, acceso a la base, reglas).
Binomio en Constantine
Riad muestra a su colega el código fuente recibido por el navegador (solo HTML) frente a su archivo .php: quien encuentre una línea de PHP en el navegador ha perdido.
Elección de proyecto
Antes de un sitio: liste los contenidos fijos (HTML) y variables (PHP) — si todo es fijo, PHP es inútil; en cuanto hay cuentas, formularios o datos, se vuelve indispensable.
✓ Buenas prácticas
- Coloque la lógica y la seguridad del lado del servidor (PHP), nunca solo del lado del cliente.
- Piense «con cada petición, el ciclo se repite».
- Vea PHP y JavaScript como complementarios (servidor/cliente).
✗ Errores frecuentes
- Creer que PHP se ejecuta en el navegador (es del lado del servidor).
- Confiar en el lado del cliente para la seguridad.
- Confundir página estática (fija) y página dinámica (generada).
Puntos clave
- PHP es un lenguaje DEL LADO DEL SERVIDOR: se ejecuta en el servidor y GENERA HTML enviado al cliente. El visitante nunca ve el código PHP.
- Ciclo fundamental: PETICIÓN (el usuario pide una página) → PHP (el servidor ejecuta el código) → HTML (generado y mostrado). Se repite con cada petición.
- PHP produce páginas DINÁMICAS y personalizadas (según el usuario, los datos) — frente a una página HTML estática siempre idéntica.
- Masivamente utilizado en la web (WordPress y gran parte de los sitios); accesible, pragmático, maduro (PHP 8+ potente). Desde pequeños sitios hasta grandes apps (Laravel, Symfony).
Reto 48h — aplique mañana
Abra una página a su elección, muestre su fuente del lado del navegador y explique en voz alta por qué no se ve ningún código PHP en ella (ciclo petición → PHP → HTML).
- Puedo explicar PHP (lenguaje de servidor que genera HTML) con el ciclo petición → PHP → HTML.
- Sé decir lo que ve el visitante (el HTML) y lo que nunca ve (el código PHP).
- Distingo una página estática de una página dinámica con un ejemplo.
Preguntas frecuentes
¿PHP está desfasado frente a tecnologías más recientes como Node.js o Python?
No, es una idea recibida basada en su pasado. PHP tiene una larga historia y sus primeras versiones tenían defectos reales, de ahí su mala reputación — pero el lenguaje ha cambiado profundamente. El PHP moderno (7, luego 8+) es muy potente (ganancias espectaculares), rico (tipado, POO completa, excepciones, enumeraciones, atributos), con un ecosistema maduro (Composer, Laravel, Symfony, PHPUnit) y estándares establecidos. Uso real: PHP impulsa una parte enorme de la web (solo WordPress mueve una inmensa proporción de los sitios), frameworks modernos apreciados (Laravel) atraen a nuevos desarrolladores y la demanda de empleo sigue siendo fuerte. Node.js, Python y PHP no son «sustitutos» sino alternativas con distintas fortalezas — para la web pragmática, PHP sigue siendo una excelente opción.
¿Qué diferencia concreta hay entre PHP (servidor) y JavaScript (navegador), y por qué importa?
Dos mundos complementarios. Lado del CLIENTE (navegador): HTML, CSS y JavaScript se ejecutan en la máquina del usuario; el código JS de cliente es visible. Lado del SERVIDOR (máquina remota): PHP ejecuta la lógica sensible (formularios, base, autenticación, reglas de negocio) y genera las páginas; el código PHP nunca se envía al navegador, solo su resultado HTML. Por qué importa: (1) SEGURIDAD — el servidor está controlado por usted, el cliente no; las operaciones sensibles deben estar del lado del servidor, y nunca hay que confiar en el cliente (una validación JavaScript debe volver a verificarse del lado del servidor — sección 3.4). (2) ACCESO a los recursos — el servidor alcanza la base y los archivos, no el navegador. (3) PERSONALIZACIÓN — PHP genera páginas distintas según el usuario y los datos. Imagen de Riad: el servidor es la «cocina», el cliente la «sala».
¿Dónde se ejecuta el código PHP?