最近项目涉及一个php的已有项目的移植的功能扩展,由于现有的人员.net很熟悉,因此检索到了phalanger方案
步骤: 1、将已有的项目运行在phalanger上(改动不多,如果有的项目涉及不兼容的地方很多那就需要一些功夫搞定了)
2、在项目基础上可以引入和.net的互操作实现新的功能
安装
phalanger (june 2010).msi php环境,安装完成后有web和一般的例子,比较简单
phalanger (june 2010) vs2008 sp1.msi php在vs2008下的集成
具体的一些背景资料介绍:
听说过phalanger的人可能不多,但您一定听过php,而phalanger则是php的.net编译器;也就是能将php程序代码 编译成.net平台的msil。phalanger早在2005年就开始由一群捷克的计算机系学生动手开发,原本是以 http://www.php-compiler.net/为根据地,但日前也进驻了codeplex。 phalanger与php 5.0兼容,并且能结合php和.net两者的对象,例如可以从.net程序使用php开发的类库,或者以 php程序使用c#或vb.net开发的类库(当然,这种php程序必须以phalanger编译);phalanger最广泛的应用就是 将php网页编译成asp.net网页,此外也能够用php编写winforms程序。最近才发布的2.0测试版beta3的phalanger ,最大的改进是完整支持.net framework 2.0。
在codeproject上有一篇文章介绍phalanger, php for .net: introduction for .net developers 。文章比较长,注 意一点就是(http://www.php-compiler.net/) 网站所使用的wiki程序 dokuwiki 就是php程序通过phalanger运行 在.net上,你应该很有兴趣去看看,感受一下.net下的动态语言。
http://phalanger.codeplex.com/
http://www.codeproject.com/kb/cross-platform/phalanger-intro.aspx
dlr
目前由于.net4中对于动态语言有dlr的支持,可以大幅的提高动态语言在.net框架的效率,phalanger也有一个项目phpp (ironphp),不过目前没有发布。