PHP - Try no captura una excepcion al no encontrar un require_once un archivo

 
Vista:
sin imagen de perfil

Try no captura una excepcion al no encontrar un require_once un archivo

Publicado por Eduardo (2 intervenciones) el 23/07/2014 04:20:57
Tengo el siguiente codigo:

try {
require_once( $variable );
} catch(Exception $e) {
require_once('archivo.php');
}

Cuando la $variable contiene un valor correcto el require_once funciona bien. Pero cuando el valor no es correcto en vez de capturarse la excepcion y hacer el require_once sobre archivo.php se para la ejecución como si no se hubiera capturado la excepción. Con include en vez de require pasa lo mismo, solo que no se cancela la ejeción. Me da los warning y pasa de largo el catch.

Gracias de antemano por la ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Try no captura una excepcion al no encontrar un require_once un archivo

Publicado por xve (6935 intervenciones) el 23/07/2014 08:29:02
Hola Eduardo, aquí lo suyo seria que revisaras con file_exist() si existe el contenido de $variable... algo así:

1
2
3
4
5
6
7
8
try {
	if(!file_exists($variable))
		throw new Exception ('No existe!!!');
	else
		require_once($variable);
}catch(Exception $e) {
	require_once('archivo.php');
}

Coméntanos si te sirve, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Try no captura una excepcion al no encontrar un require_once un archivo

Publicado por Eduardo (2 intervenciones) el 23/07/2014 14:33:34
Saludos,
funciona perfecto, además es muy lógico usar la función file_exists para esto.

Muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar