En PHP, uno de los aspectos fundamentales para mantener nuestro código limpio, modular y reutilizable es la capacidad de incluir archivos externos en nuestros scripts. Para ello, PHP ofrece varias funciones clave: include
, require
y require_once
. Estas funciones nos permiten separar secciones de código (como la lógica de la base de datos, la interfaz de usuario, o las configuraciones) en diferentes archivos, lo que mejora la organización y el mantenimiento del código.
A continuación, analizaremos cada una de estas funciones, incluyendo ejemplos prácticos y recomendaciones generales de seguridad, actualizadas a PHP 8.

¿Para que se usan include y require en PHP?
Tanto include
como require
permiten insertar el contenido de un archivo PHP en otro archivo. Este proceso es similar a copiar y pegar el contenido de un archivo en otro, pero de una forma dinámica y mucho más eficiente. La principal diferencia entre ambas funciones radica en cómo manejan los errores cuando el archivo que intentan incluir no existe o tiene problemas.
Un aspecto importante para destacar es que en PHP, include y require se pueden usar tanto con paréntesis como sin ellos. Aquí está la explicación:
1. include
La función include
intenta cargar el archivo especificado. Si el archivo no se encuentra o contiene errores, PHP emitirá una advertencia (warning
), pero seguirá ejecutando el script. Esto lo hace útil cuando el archivo externo no es vital para la ejecución del resto del código.
Sintaxis:
include 'archivo.php';
Ejemplo de uso:
// archivo principal echo "Inicio del script"; // intentar incluir un archivo include 'header.php'; echo "Fin del script";
Si header.php
no se encuentra, PHP emitirá una advertencia, pero «Fin del script» se imprimirá.
2. require
Por otro lado, require
es más estricto. Si el archivo que se intenta incluir no se encuentra o tiene un error, PHP detendrá inmediatamente la ejecución del script y lanzará un error fatal. Esto es útil cuando el archivo externo es crítico para el correcto funcionamiento del script.
A continuación veremos un ejemplo de sintaxis básica:
require 'archivo.php';
Ejemplo de uso:
// archivo principal echo "Inicio del archivo"; // intentar incluir un archivo require 'config.php'; echo "Fin del archivo";
Si config.php
no se encuentra, PHP detendrá la ejecución del script y no imprimirá «Fin del script».
Usar require_once
o la opción include_once
Cuando trabajamos en proyectos más grandes, es posible que un mismo archivo sea requerido o incluido múltiples veces. Para evitar problemas como redefiniciones de variables o funciones, PHP ofrece las funciones require_once
e include_once
. Estas aseguran que el archivo solo se incluya una vez, sin importar cuántas veces se haga la llamada.
3. require_once
La función require_once
es similar a require
, pero verifica si el archivo ya ha sido incluido. Si es así, no lo vuelve a cargar, previniendo errores de duplicación o sobrecarga.
Sintaxis:
require_once 'archivo.php';
Ejemplo de uso:
require_once 'config.php'; require_once 'config.php'; // no se incluirá nuevamente
4. include_once
De manera similar, include_once
se comporta igual que include
, pero con la seguridad de que el archivo solo será incluido una vez.
Sintaxis:
include_once 'archivo.php';
Ejemplo de uso:
include_once 'header.php'; include_once 'header.php'; // no se incluirá nuevamente
Actualizaciones de PHP 8
PHP 8 introduce varias mejoras y optimizaciones en el manejo de errores y advertencias. Aunque el comportamiento básico de include
, require
, include_once
y require_once
no ha cambiado significativamente, PHP 8 mejora la detección de errores fatales con el sistema de manejo de excepciones. Si alguna de estas funciones falla, el sistema de tipos y excepciones de PHP 8 gestiona los errores de manera más eficiente, lo que facilita el diagnóstico de problemas.
Además, la actualización a PHP 8 trae consigo mejoras en el rendimiento, lo que implica que la inclusión de archivos grandes o complejos puede ser ligeramente más rápida.
Include y require en PHP: recomendaciones generales y de seguridad
Al usar include
, require
, include_once
y require_once
, es importante seguir buenas prácticas de programación para garantizar la seguridad y el rendimiento de nuestras aplicaciones PHP.
Verificar rutas de archivos
Siempre debemos asegurarnos de que las rutas que pasamos a estas funciones sean correctas y seguras. Las rutas relativas pueden ser más flexibles, pero las rutas absolutas pueden evitar confusiones en estructuras complejas de directorios.
Ejemplo de código:
require_once __DIR__ . '/includes/config.php'; // Uso de ruta absoluta
Control de errores adecuado
Cuando usemos include
, debemos estar preparados para manejar advertencias o en caso de que el archivo no se encuentre. Aunque PHP no detendrá la ejecución, es buena práctica utilizar estructuras de control para detectar errores.
Ejemplo de código:
if (file_exists('header.php')) { include 'header.php'; } else { echo "Ha ocurrido un error al cargar la cabecera."; // Aquí se recomienda incorporar un método alternativo para resolver el problema. }
Include y require en PHP: conclusión
Las funciones include
, require
, include_once
y require_once
son esenciales para mantener nuestro código PHP modular y fácil de mantener. Usarlas correctamente, junto con buenas prácticas de seguridad y manejo de errores, es crucial para desarrollar aplicaciones robustas. Con PHP 8, el manejo de errores y el rendimiento han mejorado, lo que hace que sea aún más eficiente trabajar con archivos externos en proyectos grandes.
Siguiendo las recomendaciones aquí presentadas, podemos asegurarnos de que nuestros proyectos PHP sean más seguros, organizados y fáciles de escalar.
Si te quedan dudas o te interesa saber más sobre PHP déjame un comentario o escríbeme un mensaje.
Más sobre Diseño y desarrollo Web
Deja una respuesta