Phalanger is the .NET runtime and compiler for PHP offered by DevSense. When we lasted covered Phalanger it was in the process of converting its backend to use the DLR, which offered performance improvements over past versions.
Since then Phalanger 3 has been released support for PHP 5.3 namespace syntax and semantics as well as Mono. Some bugs in the Mono runtime caused problems that prevented fully leveraging Phalanger. In Mono 2.10.8 the bugs were fixed, making Phalanger a viable option on Linux.
Another change with Phalanger 3 is support for calling DLR objects from C# and Visual Basic. While that partially worked in version 2.1, it required a clumsy syntax involving passing around a context object. With version 3 that work-around is no longer needed. Developers also have direct access to PHP’s globals via ScriptContext.CurrentContext.Globals.
It should be noted that Phalanger still supports statically compiling PHP code into standard .NET assemblies. Marc Mezzacca recommends precompiling PHP-based websites to “make sure the application is error free and to lower response time during first request”.
Yoni Goldberg Oct 30, 2014
Dmytro Svarytsevych Oct 30, 2014