【问题标题】:Which PHP 5.3 features and extensions are not compatible with stream wrappers?哪些 PHP 5.3 特性和扩展与流包装器不兼容?
【发布时间】:2012-02-24 17:49:28
【问题描述】:

我正在将大型 PHP 应用程序中的大量文件从本地存储迁移到远程存储。文件操作正在使用 PHP 流包装器作为中间解决方案进行转换,以便我们可以轻松地将诸如 fopen('/local/file/path') 之类的调用更改为 fopen('scheme://remote/file/path')

到目前为止,我只遇到了一个被这个破坏的特性,那就是 GD 图像库(它的文件写入方法,如 imagejpeg、imagegif 和 imagepng 不会写入文件流)。

此外,PHP 安全选项拒绝 include()require() 对 URL 的调用。

我已尝试查找已知不兼容性的列表,但找不到。

我已经有几个可用的解决方法,所以我已经涵盖了那里,我们将进行广泛的测试,但如果有人以前经历过相同的过程,我想提前知道任何痛点。

具体来说,我们在 Debian Squeeze 上使用 PHP 5.3.6。

【问题讨论】:

  • 这些都可以在 php.net book 中找到

标签: php php-5.3


【解决方案1】:

我建议阅读以下内容:

http://www.php.net/manual/en/class.streamwrapper.php

你的很多答案都会在那里找到。

【讨论】:

  • 抱歉,没有答案,在实际实现包装器代码时,我已经多次阅读 PHP 手册的该部分。该页面仅列出 如何 实现流包装器,而不是哪些功能与它们不兼容(具体来说,没有提及我在原始问题中突出显示的功能)。
猜你喜欢
  • 2013-12-31
  • 2019-07-28
  • 1970-01-01
  • 2011-01-31
  • 2021-05-13
  • 2017-04-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多