我正在使用fopen生成价格Feed。
if (($handle = fopen("http://feedurl", "r")) !== FALSE) {
}
如果Feed失败,有没有办法停止此警告:
警告:fopen()[function.fopen]:php_network_getaddresses:getaddrinfo failed:名称或服务未知......
答案 0 :(得分:14)
您可以使用@
来取消警告:
if(($handle = @fopen("http://feedurl", "r")) !== FALSE){
}
这在中是合适的,因为您正在适当地处理错误条件。请注意,一般来说,自由使用@
符号来抑制错误和警告是不明智的。
如果打开失败,则会生成级别为E_WARNING的错误。您可以使用@来禁止此警告。
答案 1 :(得分:1)
这是另一种可能的解决方案
$file_name = "http://feedurl";
if (file_exists($file_name) === false) {
return;
}
$handle = fopen($file_name, "r");
答案 2 :(得分:-2)
或者您可以使用
error_reporting(E_ALL ^ E_WARNING);