我想知道是否有可能有这样的 if 语句:
if file_get_contents() returns error code xxx OR xxx
die();
我不确定如何检查是否file_get_contents()
返回错误。
我想知道是否有可能有这样的 if 语句:
if file_get_contents() returns error code xxx OR xxx
die();
我不确定如何检查是否file_get_contents()
返回错误。
您似乎正在寻找 HTTP 状态代码。在这种情况下,您需要从这里阅读它:
$http_response_header
http://php.net/manual/en/reserved.variables.httpresponseheader.php
否则,如果您想要一般错误,请按照 deceze 的说明进行操作。
http://php.net/file_get_contents
该函数返回读取的数据或失败时返回 FALSE。
它要么有效,要么无效,例如:
$file = file_get_contents(...);
if ($file === false) {
die();
}
PS:当然,在上面的答案中,我希望您使用file_get_contents
来获取本地文件的内容。如果您尝试获取远程 URL 的 HTTP 状态代码,我建议您使用cURL或类似的专用 HTTP 库并解析响应标头。
正如php 文档所述,file_get_contents()
将返回false
所有错误,所以你所能做的就是
if ($content=file_get_contents($filename)===false) die("Error reading file $filename");
你可以这样称呼它:
$data = file_get_contents("http://site.com/that.php");
if ($data !== FALSE) {
// analyze data
}