die功能不触发

时间:2016-11-01 17:39:27

标签: php die

在下面的代码中,die()函数应该执行,因为传递给simplexml_load_file()的URL是坏的。 simplexml_load_file()返回FALSE,它应该触发die():

$url = 'http://www.badurl.com';

$xml = simplexml_load_file($url) or die('Error: Can\'t create the object.');

为什么我会收到以下错误消息?

Warning: simplexml_load_file(http://www.badurl.com): failed to open stream: HTTP request failed! HTTP/1.0 404 Not Found in /var/www/badurl.com on line 16

Warning: simplexml_load_file(): I/O warning : failed to load external entity "http://www.badurl.com" in /var/www/badurl.com on line 16
Error: Can't create the object.

1 个答案:

答案 0 :(得分:1)

如果您希望静音警告,则可以使用@运算符,或禁用display_errors

$xml = @simplexml_load_file($url) or die('Error: Can\'t create the object.');
无论有没有警告,

simplexml_load_file都会返回false,无论如何都会执行die