Ver Mensaje Individual
  #6 (permalink)  
Antiguo 06/07/2002, 22:34
romina
 
Fecha de Ingreso: agosto-2001
Mensajes: 315
Antigüedad: 22 años, 8 meses
Puntos: 1
Re: include() v/s require()

Como dice el manual:

La sentencia require() se sustituye a sí misma con el archivo especificado, tal y como funciona la directiva #include de C.
La sentencia include() incluye y evalúa el archivo especificado.

A diferencia de include(), require() siempre leerá el archivo referenciado, incluso si la línea en que está no se ejecuta nunca.
include() difiere de require() en que la sentencia include se re-evalúa cada vez que se encuentra (y sólo cuando está siendo ejecutada), mientras que la sentencia require() se reemplaza por el archivo referenciado cuando se encuentra por primera vez, se vaya a evaluar el contenido del archivo o no (por ejemplo, si está dentro de una sentencia if cuya condición evaluada es falsa).



Si se quiere incluir condicionalmente un archivo, se usa include(). La sentencia conditional no afecta a require(). No obstante, si la línea en la cual aparece el require() no se ejecuta, tampoco se ejecutará el código del archivo referenciado.
Pero como dice el parrafo anterior si se lleera el contenido del archivo.

no se puede poner una sentencia require() dentro de una estructura de bucle y esperar que incluya el contenido de un archivo distinto en cada iteración. Para hacer esto, usa una sentencia include().

require() no es en realidad una función de PHP;no devuelve ningún valor; intentar leer un valor de retorno de una llamada a un require() resulta en un error del intérprete.

es posible ejecutar una sentencia return dentro de un archivo incluido con include().