7

在使用 PHP 5.3 PHAR 档案进行一些测试/脚本/播放后,我发现了一些问题。

球体

PHAR 不适用于 glob。既不是包装器(http://www.php.net/manual/en/phar.using.stream.php#104320)也不是函数调用。

在我的测试项目中,我必须遍历 PHAR 中的文件,并通过与 glob 等效的正则表达式过滤结果。

图像ttfbbox

我不知道为什么,但 imagettfbbox 也不理解 PHAR 流包装器。

这里最简单的解决方案是通过 copy() 提取文件。(PHAR::extractTo 返回一个没有堆栈跟踪或行号的异常。)

还有其他惊喜,我应该期待吗?还有其他已知问题吗?它们是否记录在任何地方?

4

2 回答 2

4

silex 微框架作为 phar 文件分发。我们在文档的陷阱部分(存档副本)中记录了我们遇到的大部分问题。

注意:这主要是从用户的角度来看。

于 2011-11-21T15:43:12.790 回答
2

glob:我不认为 glob 支持流,所以这不会特定于phar://任何流包装器。

imagettfbbox:我认为这是一样的,不支持流包装器,但只支持裸文件。

还有其他功能,您也会遇到相同的情况。例如 ZIP 类也不能处理流。

并不是所有的流包装器都支持流包装器堆叠,例如一个包装器在另一个包装器上运行。

随意在 php bugtracker 中打开功能请求和/或支持 PHP 开发,以便为您需要的组件引入更好的流支持。

松散相关: 在内存中下载并解压缩 zip 存档

于 2011-11-21T09:34:49.327 回答