当前位置: 首页 > 面试题库 >

file_get_contents返回空字符串

慎建本
2023-03-14
问题内容

我犹豫要问这个问题,因为它看起来很奇怪。但不管怎么说。以防万一有人已经遇到了相同的问题…文件系统功能(fopem,file,file_get_contents)对于http://包装器表现得很奇怪

  • 它似乎有效。 没有提出错误 。fopen()返回资源。
  • 它不会为所有肯定有效的网址返回任何数据(例如http://google.com/)。
    文件返回空数组,file_get_contents()返回空字符串,fread返回false

  • 对于所有故意错误的url(例如http://goog973jd23le.com/),它的行为完全相同,只保留了很少的[据说是域查找]超时,此后我没有收到任何错误(虽然应该!),但字符串为空。

  • url_fopen_wrapper已打开
  • curl(命令行和php版本)都可以正常工作,所有其他实用程序和应用程序都可以正常工作,本地文件可以正常打开

这个错误似乎不适用,因为在我的情况下,该错误不适用于每个网址或主机。

php-fpm 5.2.11
Linux版本2.6.35.6-48.fc14.i686(mockbuild@x86-18.phx2.fedoraproject.org)


问题答案:

我通过从PHP配置中删除–with-curlwrapper并对其进行重建,从而在服务器上(在Fedora 14上运行PHP 5.3.3)修复了此问题。



 类似资料:
  • 我完全被Protobuf的问题困住了 给定以下代码: 这将计算为true并退出应用程序。什么可能使protobuf在MessageName上返回空字符串?我可以看到,这些类型及其名称在生成的protobuf消息代码中进行了应有的注册: 我还验证了上面的init实际运行,它确实运行。 我有其他生成的原始消息,它们会按预期返回它们的名称。那么这里出了什么问题? 编辑原型文件如下所示 再次编辑。手动调用

  • 问题内容: 我正在尝试制作Sitecraper。我是在本地计算机上制作的,在那儿工作得很好。当我在服务器上执行相同操作时,它显示403禁止错误。我正在使用PHP简单HTML DOM解析器 。我在服务器上收到的错误是这样的: 警告:file_get_contents(http://example.com/viewProperty.html?id=7715888)[function.file- get

  • 我遇到过一个奇怪的情况,在MSFT Azure短语断路器处理完一段文本后,有一段代码被设计用来剔除空白字符串、句点破折号等。我需要帮助找出如何调试这个问题。 当给定值时,以下代码块返回。显然,期望方法在第一个语句之后返回。在要看的899个短语中,似乎只有两个有这个问题。在另一台机器上也会发生。 下面是调试器的快照。 这可能是Visual Studio或.NET中的bug吗?我试着使用各种可视化器,

  • 我们构建一个PHP脚本来缓存服务器硬盘驱动器(ext4)上的图像(Debian Wheezy with SELinux, Apache, PHP 5.3.26)。 使用类似于以下代码的代码: 在脚本的后面,将打开相同的文件进行读取: 尽管硬盘上有正确的数据,但有时$content在文件写入文件系统时是空的。函数filesize()显示了相同的行为。 任何日志文件(审计、php等)中都没有错误。将c

  • 场景:用于编辑产品详细信息的HTML文档被编码为ISO-8859-1,并将POST数据发送到PHP文件(也被编码为ISO-8859-1)。这个PHP文件有mysql_real_escape_string-functions来清理输入。数据库/MySQL server字符集为UTF-8。问题是,当POST字符串中包含斯堪的纳维亚字母(ä,ö,å)时,mysql_real_escape_string返

  • 问题内容: 我有一个带有3个嵌套数组的简单php结构。 我不使用特定的对象,而是使用2个嵌套循环构建数组。 这是我要转换为Json的数组的var_dump的示例。 在另一个脚本中,我具有类似的结构并且工作正常。所以我不明白为什么在这里不起作用。 编辑:似乎有编码问题。当返回ASCII,该作品但当它返回UTF8,它不工作了。 Edit2:返回表示:格式错误的UTF-8字符,可能编码不正确。 问题答案