不同的PHP压缩库有什么好处?

时间:2010-03-16 18:36:05

标签: php compression phar bcompiler

我一直在研究如何压缩PHP库,我发现了几个可能有用的库,但我对它们的了解并不多。

我一直在阅读有关bcompiler和PHAR库的内容。这些中的任何一个都有任何性能优势吗?有什么“陷阱”我需要注意吗?有什么相对的好处?他们中的任何一个会增加/减少性能吗?

我也有兴趣学习其他可能在文档中不明显的库?

顺便说一下,有没有人碰巧知道这些工作是否更像是恰好在其中有代码的zip文件,或者它们是否更像Python的预编译实际运行伪编译器?

=======================编辑=======================

我被问到,“你想要完成什么?”好吧,我想答案是这都是假设的。它是这些的组合:

  • 如果我的宠物项目成为世界上最受欢迎的网络项目,我想快速轻松地分发它怎么办? (干草,男人可以做梦,对吧?)似乎如果能够轻松地使用PHAR,这将是创建颠覆快照的最佳方式。
  • Python有这个非常酷的预编译策略,我想知道PHP是否有这样的东西?这些库似乎做了类似的事情。他们会这样做吗?
  • 嘿,这些库看起来很整洁,但我想澄清差异,因为它们似乎做同样的事情

2 个答案:

答案 0 :(得分:7)

Phar只是将一系列php脚本打包成一个文件 - 然后可以运行包含的应用程序,而无需先将其解包。 phar的要点不是预编译(速度)或压缩(用于空间)应用程序,只是为了使其更易于分发。

你想要达到什么目的?脚本文件大小永远不会成为问题,因为每次调用脚本时脚本都不会通过网络传输。速度可以通过使用诸如Zend之类的缓存进行缓存,或者使用运行Facebook的Hip Hop之类的预编译来解决。

答案 1 :(得分:1)

Php也有“预编译器”支持,但这称为“字节码缓存”。 使用on消除了每次解析和编译.php文件的需要,并且您真正重新启动应该在运行PHP应用程序的任何地方使用它。

值得注意的例子包括APCeAccelerator