检查 PHP 中的文件句柄类型
我使用 fopen 从 URL 打开 feed(.txt 文件),但有时找不到 feed。我希望 fopen 在发生这种情况时返回 FALSE,这样我就可以处理错误。但是,当在目标 URL 上找不到提要时,我将被重定向到网站上的另一个页面,通知我未找到指定的文件。结果是,我的 $handle 引用了错误的文件,并且 fopen 返回 TRUE (因为它发现了一些东西,尽管是错误的),从而破坏了我处理错误的尝试。
如何验证 fopen 是否获得了正确的文件?谢谢。
if ($handle = fopen($feed, "r")) {
//fopen returned true, do stuff
} else {
//fopen returned false, quit
die("Fail.");
}
I'm using fopen to open a feed (.txt file) from a URL but sometimes the feed isn't found. I would like fopen to return FALSE when this happens, so I can handle the error. However, when the feed isn't found on the target URL, I'm being redirected to another page on the site, informing me that the specified file wasn't found. The result being, my $handle refers to the wrong file, and fopen returns TRUE (because it has found -something- albeit the wrong thing), thus sabotaging my attempt at error handling.
How can I verify that fopen has got the right file? Thanks.
if ($handle = fopen($feed, "r")) {
//fopen returned true, do stuff
} else {
//fopen returned false, quit
die("Fail.");
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以让 http 包装器忽略重定向,如下所示:
You can get the http wrapper to ignore redirects as follows: