在使用PHP 5.3 PHAR档案进行了一些测试/脚本/播放之后,我发现了一些问题。
glob
PHAR不适用于glob。既不作为包装器(http://www.php.net/manual/en/phar.using.stream.php#104320),也不作为函数调用。
在我的测试项目中,我必须遍历PHAR中的文件,并使用等效于地球的正则表达式过滤结果。
imagettfbbox
我不知道为什么,但是imagettfbbox也不理解PHAR流包装器。
这里最简单的解决方案是通过copy()提取文件。 (PHAR :: extract要返回没有堆栈跟踪或行号的异常。)
还有其他惊喜,我应该期待吗?还有其他已知问题吗?并且它们在任何地方都有记录吗?
silex微框架以phar文件的形式分发。我们已经记录了遇到in the pitfalls section of the documentation(归档副本)的大多数问题。
注意:这主要是从用户的角度来看。
glob:我不认为glob支持流,因此这不是特定于phar://
,而是任何流包装器。
imagettfbbox:我认为这是相同的,不支持流包装,而仅支持裸文件。
还有其他功能,您也会遇到相同的功能。例如,ZIP类也无法处理流。
并且并非所有的流包装器都支持流包装器堆叠,例如一个包装器在另一个包装器上运行。
随意在php bugtracker中打开功能请求和/或支持PHP开发,以便为所需的组件引入更好的流支持。