Require() vs include() y require_once() vs include_once()

hector150293 Seguir

Curioso
Verificación en dos pasos desactivada
Desde
12 Feb 2016
Mensajes
12
Vamos a ver las diferencias entre estas cuatro sentencias que PHP usa para importar normalmente una sección de código, donde por ejemplo podríamos tener almacenadas las funciones para el correcto funcionamiento de la web.

include 'file.php';
require 'file.php';
include_once 'file.php';
require_once 'file.php';


Todas importan código desde dicho archivo PHP.
¿Entonces que diferencia hay entre utilizar include() o require()? ¿Tengo que utilizar include() o include_once()?

require() vs include()

require() establece que el código del archivo invocado es requerido, es decir, obligatorio para el funcionamiento del programa. Por ello, si el archivo especificado en la función require() no se encuentra saltará un error “PHP Fatal error” y el programa PHP se detendrá.

include(), por el contrario, si no se encuentra dicho código, saltará un error tipo “Warning” y el programa seguirá ejecutándose (aunque como consecuencia de no incluirse el código puede que no funcione correctamente, o sí, depende de la situación).

require_once()/include_once() vs require()/include()

Las versiones require_once() e include_once() funcionan de la misma forma que sus respectivos, salvo que, al utilizar la versión _once, se impide la carga de un mismo archivo más de una vez.

Si incluimos el mismo código más de una vez corremos el riesgo de redeclaraciones de variables, funciones o clases. Es lógico pensar que por ello, es mejor siempre utilizar la versión _once. Si embargo, has de saber que estas versiones son más pesadas y consumen más recursos y por ello hay que utilizarlas sólo cuándo sea necesario.
 
Última edición:

lombervid

Zeta
Verificación en dos pasos desactivada
Desde
29 Abr 2011
Mensajes
1.516
No son funciones (error muy común), son sentencias. Aunque funcionan si las usan como funciones.

Esto es, su sintaxis correcta es:
PHP:
include 'file.php';
require 'file.php';
include_once 'file.php';
require_once 'file.php';

Saludos.
 

¡Regístrate y comienza a ganar!

Beneficios

  • Gana dinero por participar
  • Gana dinero por recomendarnos
  • Descubre ofertas de empleo diariamente
  • Negocios seguros
  • ¡Información premium y más!

Acceder

¿Ya tienes una cuenta? Accede aquí

Arriba