首先请看一条令人振奋而吃惊的消息:“First there was IronPython and now, Phalanger. And contrary to conventional wisdom, both seem to run faster [in most cases] on the CLR than their native implementations” 。
原文:http://blogs.msdn.com/sajee/archive/2005/03/20/399347.aspx
测试结果:http://www.php-compiler.net/Benchmarks.htm
在进入ASP.NET的世界之前,我主要是用PHP进行Web程序开发,非常喜欢PHP简洁的语法,多么希望有一天.NET能够支持PHP, 可以用PHP写ASP.NET应用程序。今天在网上无意间发现了自己的这个梦想已经被人实现了, 这就是:
Phalanger-
(简单翻译,建议直接看英文原文)
Phalanger让Web应用程序开发人员不仅可以享受PHP的易用和高效而且可以利用.NET提供的一切好处。它可以让开发人员在ASP.NET Web服务器上方便地配置和运行存在的PHP程序。 Phalanger支持PHP 5.0, Phalanger的对象模型允许PHP对象和.NET对象的混合。有了它, .NET应用程序可以调用PHP写的类或者将.NET中的类引入到PHP 脚本中。 Phalanger是目前唯一的能生成MSIL字节码的PHP编译器。
Phalanger为.NET开发人员提供了大量实用的PHP函数和数据结构。.NET开发人员可以访问整个 Phalanger类库,不管他使用哪种.NET语言。
在Phalanger环境中,PHP脚本的编译增强了存在的Web应用程序。脚本中所有静态的代码一次编译,之后,对页面的访问不再需要脚本的本地编译。Phalanger不仅支持Web应用程序,而且支持独立的可执行程序或动态链接库,你可以创建managed PHP控制台应用程序或者被其他.NET应用使用的库模块。
该项目除了PHP编译器之外,还包含将PHP脚本编辑集成到VS.NET 2003的组件。
BTW: 最近经常出现一些怀疑.NET的文章,我想说的是不要把.NET与微软划上等号, 技术就是技术,即使现在微软放弃.NET, 我想.NET也会发展下去。看看国外的开发人员在做什么?行动胜于雄辩!