Foros del Web » Programando para Internet » PHP »

Hay algun tipo de excepcion para require_once

Estas en el tema de Hay algun tipo de excepcion para require_once en el foro de PHP en Foros del Web. Hola amigos!! Me gustaria saber si php contiene algun tipo de mecanismo para saber que el require_once falla, asi puedo lanzar una excepcion y capturarla ...
  #1 (permalink)  
Antiguo 09/02/2012, 11:33
 
Fecha de Ingreso: diciembre-2010
Mensajes: 79
Antigüedad: 13 años, 11 meses
Puntos: 3
Hay algun tipo de excepcion para require_once

Hola amigos!!

Me gustaria saber si php contiene algun tipo de mecanismo para saber que el require_once falla, asi puedo lanzar una excepcion y capturarla en otro lado o informar al programador, etc.

Un saludo!
  #2 (permalink)  
Antiguo 09/02/2012, 11:39
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Hay algun tipo de excepcion para require_once

Según el manual, supongo que ya lo has leído, un require o require_once provoca un error fatal en caso de no encontrar el archivo a cargar.

Los errores fatales no se pueden depurar pues son errores de programación y no del usuario.

Lo que si puedes comprobar es un archivo antes de cargarlo con is_file().
Código PHP:
$foo 'bar.php';

if (
is_file($foo)) {
  require_once 
$foo;
// else ... informo 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 09/02/2012, 11:42
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años, 7 meses
Puntos: 326
Respuesta: Hay algun tipo de excepcion para require_once

Supongo que puedes usar algo así

Código PHP:
if(!@file_exists($file_to_require)) {
    echo 
"Error";
}
else {
    require_once(
$file_to_require);

Así es dificil que falle el require...


Y esto no se si funcionaria...
Código PHP:
if (require_once($file_to_require) !== false) { echo "Se ha incluido"; } 
__________________
>> Eleazan's Source
>> @Eleazan

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:24.