La sentencia include() incluye y eval煤a el archivo especificado.
Esta documentaci贸n tambi茅n se aplica a la funci贸n require(). require() y include() son id茅nticas en todos los aspectos excepto en el modo de actuar ante un error. include() produce un Warning mientras que require() produce un Error Fatal. En otras palabras, no dude en utilizar require() si quiere que un fichero no encontrado cuelgue el procesamiento de la p谩gina. include() no se comporta de esta manera, el script seguir谩 funcionando de todas maneras. Asegurarse que include_path este configurado bien.
Cuando un fichero es incluido, el c贸digo que contiene hereda la variable scope de la linea en donde el include ocurre. Cualquier variable disponible en esa linea en el fichero desde donde se hace la inclusi贸n estar谩 disponible en el fichero incluido a partir de ese momento.
Ejemplo 16-3. Ejemplo b谩sico de la funci贸ninclude()
|
Si la inclusi贸n ocurre dentro de una funci贸n en el fichero donde se incluye, todo el c贸digo contenido en el fichero incluido se comportar谩 como si hubiese sido definido dentro de esta funci贸n.
Cuando un fichero es incluido, el int茅rprete sale del modo PHP y entra en modo HTML al principio del archivo referenciado, y vuelve de nuevo al modo PHP al final. Por esta raz贸n, cualquier c贸digo dentro del archivo referenciado que debiera ser ejecutado como c贸digo PHP debe ser encerrado dentro de etiquetas v谩lidas de comienzo y fin de PHP.
Si "URL fopen wrappers" esta activada en PHP (como est谩 en la configuraci贸n inicial), se puede especificar el fichero que se va a incluir usando una URL (via HTTP u otro mecanismo soportado, consultar Ap茅ndice M) en vez de un fichero local. Si el servidor destino interpreta el fichero destino como c贸digo PHP, variables pueden ser mandadas al fichero incluido usando una cadena URL de petici贸n, tal como se hace con HTTP GET. Esto no es lo mismo que incluir un fichero y que este fichero herede las variables del fichero padre; el script es ejecutado en el servidor remoto y el resultado es incluido en en script local.
| Aviso |
Versiones de PHP para Windows anteriores a 4.3.0, no soportan el acceso remoto a archivos para esta funci贸n, no funcionar谩 ni activando siquiera allow_url_fopen. |
Ejemplo 16-5. include() a traves de HTTP
|
Ya que include() y require() son contructores especiales del lenguaje, se deben de incluir dentro del bloque de una sentencia, si est谩n dentro de un bloque condicional.
Es posible ejecutar una sentencia return dentro de un archivo incluido para terminar el procesado de ese archivo y volver al archivo de comandos que lo llam贸. Tambien es posible retornar valores de ficheros incluidos. Se puede coger el valor de la llamada "include" como se har铆a con una funci贸n normal.
Nota: En PHP3, return no puede aparecer dentro de un bloque a menos que sea un bloque de funci贸n, en el cual return se aplica a esa funci贸n y no al archivo completo.
$bar es igual a 1 porque la inclusi贸n salio bien. Notar la diferencia entre los dos ejemplos anteriores. el primero usa return() dentro del fichero incluido y el segundo no. Otras maneras de incluir ficheros en variables es con fopen(), file() 贸 usando include()con Funciones de control de salida.
Nota: Puesto que esto es una construcci贸n del lenguaje y no una funci贸n, no puede ser llamado usando funciones variables
Ver tambi茅n require(), require_once(), include_once(), readfile(), virtual(), y include_path.