Codeigniter和Hack语言

时间:2014-10-30 17:02:43

标签: php hhvm hacklang

我想知道如何以及是否可以在codeigniter模型和控制器中使用HHVM运行Hack代码。

还有任何积极的努力将像CI这样的PHP框架移植到Hack中吗?

2 个答案:

答案 0 :(得分:2)

  

我想知道如何以及是否可以在codeigniter模型和控制器中使用HHVM运行Hack代码。

是的! Hack完全向后兼容PHP。首先应确保CodeIgniter在HHVM上运行。 100% of its unit tests are passing on HHVM,所以我希望你能很幸运。

然后,您可以开始在CodeIgniter旁边编写Hack代码。 HHVM将允许Hack调用PHP和PHP来调用Hack而不会出现任何问题。 The Hack type system对PHP代码一无所知,因此无法帮助您解决边界类型错误,但一切都会有效。

  

还有任何积极的努力将像CI这样的PHP框架移植到Hack中吗?

我现在不知道。与其他答案所说的相反,这绝对是一件有用的事情!即使CI不想利用the many benefits of the Hack language,如果他们甚至想添加类型注释,那肯定会帮助任何想要使用Hack的人!因此,将现有项目转换为Hack对用户有明确的好处,然后您可以继续逐步使用Hack的更多功能。

主要问题是Hack只能在HHVM上运行; CI的现有用户将无法使用PHP5引擎。 Hack团队有一个解决方案,我们很快就会宣布,请继续关注:)

答案 1 :(得分:1)

我想知道如何以及是否可以在codeigniter模型和控制器中使用HHVM运行Hack代码。

Hack代码将在PHP运行的任何地方运行 - 它需要的只是将<?php标记更改为<?hh(这是一个'查找和替换',实际上可以在没有它的情况下完成任务! !)

但是,您需要在服务器上运行HipHop Virtual Machine(HHVM)

还有任何积极的努力将像CI这样的PHP框架移植到Hack中吗?

不 - 这将毫无意义--HHVM旨在运行PHP(字面意思是,它专为PHP编译为字节码而设计),Hack只是PHP语言的扩展(不是那么简单的解释)

好消息?????? - 您可以直接将CI放到您的服务器上并通过HHVM运行它,您将获得Just In Time编译器的速度优势!!!!! It Works straight out of the box(显然 - 没有尝试过,但尝试过Laravel,只需很少的调整就能很好用!)

我认为你误解了Hack和HHVM究竟是什么,所以希望上面有一点澄清。

摘要

HHVM是一种在您的服务器上运行的虚拟机服务,它将PHP从动态语言更改为编译(即时)语言,使其速度更快(我的意思是,愚蠢地快)

Hack是一种在HHVM上运行的语言,可以很好地与PHP一起使用 - 将其视为PHP的扩展,而不是替代。

任何用PHP编写的东西都可以在今天的Hack中扩展/编写。

你可以重写PHP的某些部分,以利用Hack给你的一些“附加功能”,但在我看来是“过度优化”。

希望有所帮助,并且很清楚。