[nycphp-talk] PHP meets .NET
Jayesh Sheth
jayeshsh at ceruleansky.com
Tue Feb 22 12:25:53 EST 2005
Guten Tag,
(Dan used hola, so I thought I would try something different too.)
I just saw this, and I thought it was pretty cool:
http://www.php-compiler.net/
Here is some info. from their site. Very cool, in my opinion. Looks like
it is only available for non-commercial use though (
http://www.php-compiler.net/License.htm).
Hope to see the regulars (and some new faces too) at the meeting tonight.
- Jay
-----
Phlanger: the PHP Language Compiler for .NET Framework
Extends the .NET language family with PHP version 5
* PHP code compiled into MSIL (Microsoft Intermediate Language)
byte-code and metadata
* compiled functions, classes and interfaces can be used from other
.NET languages (like C#)
* type inheritance preserved – each PHP class or interface
declaration corresponds to one CLI type
* PHP code can call methods declared in the Phalanger's Class
Library (methods annotated by certain metadata are visible to PHP
code)
* classes defined in Phalanger's Class Library which inherits from
common supertype (PhpObject) can be instantiated and inherited
from PHP code
* the Class Library can be extended by user code written in any .NET
language provided some requirements are fulfilled
Enables creation of ASP.NET applications made of existing PHP
scripts
* development of ASP.NET web applications made up from existing PHP
scripts
* scripts are compiled automatically and gradually as requests incoming
* scripts are watched for modifications and recompilation is
performed if necessary
* enables web application to be configured using hierarchy of
Web.config files
* web server is not needed to be restarted when configuration changes
Compiles PHP scripts to achieve a significant speed-up of
application execution
* compiled scripts run faster than interpreted ones and even those
sped-up by PHP encoders (see benchmarks
<http://www.php-compiler.net/Benchmarks.htm>)
* console applications written in PHP are compiled into
single-module executable .NET assemblies
* libraries of PHP classes, interfaces, constants and functions are
compiled into single-module .NET assemblies
Provides .NET application developers with all the PHP libraries
* more than 450 PHP functions implemented in the Phalanger Class Library
* all PHP extensions are available to any other .NET language via
managed wrappers
* managed wrappers encapsulates native extension dlls with a managed
layer hiding implementation details of extension dlls
* native extensions can be hosted in separate process to isolate
native code from web server's address space
* communication with isolated extensions via .NET Remoting with
shared memory channel
Integrates the PHP language into Microsoft Visual Studio .NET
* a new type of project for PHP console applications and libraries
* syntax highlighting
* syntax checking
* integrated project building
* simple tracing using compiler-generated debug symbols
(experimental in this version)
More information about the talk
mailing list