La diferencia entre require(), include(), require_once() e include_once()
El archivo incluido en require() no puede contener estructuras de control y no se pueden utilizar declaraciones como return. El uso de la declaración de devolución en un archivo incluido con require() generará un error de procesamiento.
A diferencia de la declaración include(), la declaración require() leerá incondicionalmente el contenido de los archivos que contiene, independientemente de si estas declaraciones se ejecutan. Entonces, si desea incluir diferentes archivos según diferentes condiciones, debe usar la declaración include(). Por supuesto, si la declaración en la ubicación de require() no se ejecuta, las declaraciones en el archivo contenido por require() tampoco se ejecutarán.
La declaración de inclusión solo leerá los archivos que se incluirán cuando se ejecute. Para facilitar el manejo de errores, utilice la declaración de inclusión. Si ocurre un error de inclusión, el programa omitirá la declaración de inclusión. Aunque se mostrará el mensaje de error, el programa continuará ejecutándose.
El procesador PHP lo reprocesará cada vez que encuentre una declaración include(), por lo que puede usar include() en declaraciones de control condicional y declaraciones de bucle para incluir diferentes elementos según diferentes situaciones del archivo.
Las declaraciones require_once() e include_once() corresponden a las declaraciones require() e include() respectivamente. Las declaraciones require_once() e include_once() se utilizan principalmente cuando es necesario incluir varios archivos, lo que puede evitar eficazmente errores en definiciones repetidas de funciones o variables causados por incluir el mismo fragmento de código.