Incluir archivos PHP

El inclusión del lado del servidor (SSI) se utiliza para crear funciones, encabezados, pies de página o elementos que se pueden usar en múltiples páginas.

La sentencia include (o require) obtiene todo el texto/código/símbolo existente en el archivo especificado y lo copia al archivo que utiliza la sentencia include.

Incluir archivos es útil cuando necesitas referirte al mismo PHP, HTML o texto en varias páginas del sitio web.

Sentencias include y require en PHP

A través de las sentencias include o require, se puede insertar el contenido de un archivo PHP en otro PHP (antes de que el servidor lo ejecute).

Las sentencias include y require son idénticas, excepto en lo que respecta al manejo de errores:

  • El require genera errores fatales (E_COMPILE_ERROR) y detiene el script
  • El include solo genera advertencias (E_WARNING), y el script continuará

Por lo tanto, si desea continuar ejecutando y mostrarle al usuario los resultados, incluso si el archivo de contenido se ha perdido, utilice include. De lo contrario, en el desarrollo de marcos, CMS o aplicaciones PHP complejas, siempre utilice require para referenciar archivos críticos en el flujo de ejecución. Esto ayuda a mejorar la seguridad y la integridad de la aplicación, en caso de que un archivo crítico se pierda.

El include ahorra mucho trabajo. Esto significa que puede crear archivos de encabezado, pie de página o menú estándar para todas las páginas. Luego, cuando necesite actualizar el encabezado, simplemente actualice el archivo de encabezado que contiene.

Sintaxis

include 'filename';

o

require 'filename';

Ejemplo de include PHP

Ejemplo 1

Supongamos que tenemos un archivo de pie de página estándar llamado "footer.php", como se muestra a continuación:

<?php
echo "<p>Derechos de autor © 2006-" . date("Y") . " codew3c.com</p>";
?>

Si desea incluir este archivo de pie de página en una página, utilice la sentencia include:

<html>
<body>
<h1>¡Bienvenido a nuestra página principal!</h1>
<p>Un texto.</p>
<p>Un texto.</p>
<?php include 'footer.php';?>
</body>
</html>

Ejemplo de ejecución

Ejemplo 2

Supongamos que tenemos un archivo de menú estándar llamado "menu.php":

<?php
echo '<a href="/index.asp">Página principal</a> -
<a href="/html/index.asp">Tutoriales HTML</a> -
<a href="/css/index.asp">Tutoriales CSS</a> -
<a href="/js/index.asp">Tutoriales JavaScript</a> -
<a href="/php/index.asp">Tutoriales PHP</a>';
?>

Todas las páginas del sitio utilizan este archivo de menú. La práctica es la siguiente (usamos un elemento <div> para que en el futuro podamos aplicar estilos CSS de manera sencilla):

<html>
<body>
<div class="menu">
<?php include 'menu.php';?>
</div>
<h1>¡Bienvenido a mi página principal!</h1>
<p>Texto.</p>
<p>Más texto.</p>
</body>
</html>

Ejemplo de ejecución

Ejemplo 3

Supongamos que tenemos un archivo llamado "vars.php", donde se definen algunas variables:

<?php
$color='De color plateado';
$car='Coche Mercedes';
?>

Luego, si referenciamos este archivo "vars.php", podemos usar estas variables en el archivo de llamada:

<html>
<body>
<h1>¡Bienvenido a mi página principal!</h1>
<?php
include 'vars.php';
echo "Tengo un" . $color . $car . ".";
?>
</body>
</html>

Ejemplo de ejecución

PHP include vs. require

La sentencia require también se usa para referenciar archivos en el código de PHP.

Sin embargo, hay una gran diferencia entre include y require: si se usa la sentencia include para referenciar un archivo y PHP no puede encontrarlo, el script continuará ejecutándose:

Ejemplo

<html>
<body>
<h1>Bienvenido a mi página principal!</h1>
<?php
include 'noFileExists.php';
echo "Tengo un $color $car.";
?>
</body>
</html>

Ejemplo de ejecución

Si completamos el mismo caso con la sentencia require, la sentencia echo no continuará ejecutándose, ya que el script se detendrá después de que la sentencia require devuelva un error grave:

Ejemplo

<html>
<body>
<h1>Bienvenido a mi página principal!</h1>
<?php
require 'noFileExists.php';
echo "Tengo un $color $car.";
?>
</body>
</html>

Ejemplo de ejecución

Notas:

Utilice require aquí: cuando el archivo es solicitado por la aplicación.

Utilice include aquí: cuando el archivo no es necesario y la aplicación debe continuar ejecutándose si el archivo no se encuentra.