在下面的代码中,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.
答案 0 :(得分:1)
如果您希望静音警告,则可以使用@
运算符,或禁用display_errors
。
$xml = @simplexml_load_file($url) or die('Error: Can\'t create the object.');
无论有没有警告, simplexml_load_file
都会返回false
,无论如何都会执行die
。