PHP file_get_contents对于文件太大返回false


PHP file_get_contents returns false for too large of a file?

我正在运行一个facebook-fql查询,它返回一个大的json字符串。然后我对URL进行file_get_contents。如果我将fql查询限制为100个结果,那么我的file_get_contents((将返回fine。如果我将其增加到200个结果,file_get_contents((将返回false。

我已经通过facebook的开放式图形资源管理器进行了测试,100和200个查询都运行良好。此外,在我的本地主机上,我可以很好地返回200个结果。在我的作品中,我只能得到100个。当我尝试200时,fileget_contents返回false。

我的生产环境中是否有php.ini设置阻止file_get_contents处理过大的文件?

如手册中所述,file_get_contents在失败时返回读取的数据或FALSE

所以,如果它返回FALSE,那么其他地方一定有问题,您可能不知道它是什么,因为错误是隐藏的。

尝试将错误日志启用为E_WARNING级别,用try...catch块围绕file_get_contents代码,该块记录在磁盘上的某个文件中。这将显示错误所在。

(在更改php.ini文件之前,请记住在生产时上传try..catch更新的代码(

在这里,你可以找到一个其他人可能面临类似问题的例子。