我可以使用Facebook的hiphop与Zend Framework,cakephp,symfony等框架

时间:2010-02-03 07:13:40

标签: php zend-framework cakephp symfony1 hiphop

昨天Facebook发布了HipHop,一个从php到c ++的源代码转换器。 php函数和结构的集合比标准的php更受限制。

当前流行的php框架(ZF,CakePHP,symfony)是否与HipHop兼容?如果没有,这些框架的哪些部分不可用?

6 个答案:

答案 0 :(得分:9)

如果我没弄错的话,HipHop尚未发布 - 即使wiki page链接的Facebook annoucement yesterday尚未发布。

所以,现在要回答起来有点困难。


我想这一切都取决于:

  • 框架使用的功能 - 就像已经说过的那样,HipHop不支持像eval这样的东西
  • 框架使用的PHP扩展:其中只有几个已被Facebook移植到HipHop。
  • 根据框架和您的特定需求,可能/可能会支持您正在使用的框架的某些子集,即使不是每个可用的组件......我想时间会告诉哪些; - )

答案 1 :(得分:5)

至少ZF和Symfony用于企业级应用程序,很有可能它们将与HipHop一起运行。如果不是现在,那么迟早。但是,问题不在于它们是否可以运行这些框架,而是支持IT架构的样子。

HipHop用于扩展Facebook等大型多服务器高流量网站。在常规Web应用程序中,您可能无法获得优势。继续使用memcache和APC。

参见以下相关文章:

答案 2 :(得分:2)

虽然我确信我们大多数人都对HipHop会是什么感到好奇,但我知道它不会替代PHP - 它是一个非常小众的产品:除非您运行的是大型服务器场,否则性能优势与维护成本是不合理的。

对某些人来说,使用编码的PHP可能是一个有趣的替代方案 - 但这再次引入了更大的维护开销。编译PHP看起来很有意义的唯一低容量场景是嵌入式设备(软件存在以支持硬件而不是反之亦然)和非常高安全性的安装(其中不是一个好主意)有翻译)。

能够说出PHP软件能用它做什么还为时尚早。然而,即使一旦成立,我也希望看到来自任何供应商的坚定承诺,他们在我转换之前将在未来明确支持HipHop。

下进行。

答案 3 :(得分:2)

我不会重复已经说过的内容,我只想补充说,只要HipHop发布,您就可以指望开源社区为您喜欢的框架提交补丁,以增强与HipHop的兼容性。

此外,测试您最喜欢的框架是否兼容的一个好方法是使用HPHPi启动测试套件(然后您知道在哪里集中修补工作;)。

答案 4 :(得分:2)

搜索'eval'会产生很多误报,因为你会在评论中点击“evaluate”,或者如果搜索不区分大小写,则会返回escapeValue等。

如果你在ZF 1.11中搜索'eval(',你会在第59行的Zend / Serializer / Adapter / PhpCode.php中找到,在一个反序列化存储的PHP代码的方法中。该方法不是一个部分MVC体系结构,db组件,实际上并没有在框架中的任何其他地方使用(Zend_Serializer_Adapter_PhpCode没有在代码库中的任何其他地方实例化)。

因此,如果eval打破了您的ZF-Hip Hop应用程序,请不要在您的消费者代码中使用Zend_Serializer_Adapter_PhpCode或eval。

答案 5 :(得分:1)

简单回答:我认为不会。

刚在hiphop页面上看到这个:https://github.com/facebook/hiphop-php/wiki/

“您继续使用更简单的PHP进行编码,然后HipHop以语义等效的方式执行您的源代码并牺牲一些很少使用的功能 - 例如eval() - 以换取提高的性能。”

在ZF 1.9上搜索'eval'并且有超过100次出现。