Phalanger
Phalanger | |
---|---|
Тип | компилятор |
Написана на | C# |
Последняя версия | |
Репозиторий | github.com/devsense/phal… |
Лицензия | лицензия Apache |
Phalanger — компилятор языка PHP для .NET, представляет собой язык и реализацию стандартной библиотеки совместимой с большинством существующих PHP-приложений. Также поддерживает вызов родных PHP4 расширений, что дает возможность использовать большинство PHP-функций и классов. Phalanger, для внутренних нужд, использует ASP.NET фреймворк, но только для реализации управления HTTP запросов и ответов, сессий и куки. Рендеринг страниц всё ещё такой же как в PHP, что даёт программисту полный контроль над генерируемым кодом, а также совместимость с уже существующим кодом. Начиная с версии 2.0, Phalanger поддерживает полную функциональную совместимость с .NET. Это значит, что программист имеет доступ почти ко всем .NET-классам из PHP-приложения. Поддержка совместимости с .NET потребовала расширить язык PHP так, чтобы из него можно было работать с такими особенностями архитектуры .NET, как пространство имён, обобщенные типы. Это расширение получило имя PHP/CLR.
Благодаря полной поддержке .NET появилась возможность разрабатывать все виды .NET-приложений на языке PHP в том числе с пользовательским интерфейсом, основанным на Windows Forms, библиотеки классов и web-приложения на инфраструктуре ASP.NET.
Существует два режима компиляции: унаследованный (legacy) и чистый (pure). «Унаследованный режим» полностью совместим со стандартным PHP, однако использовать скрипты скомпилированные в этом режиме немного сложнее. Для того, чтобы сделать использование PHP объектов из C# как можно проще, был введен «чистый режим» при котором программист должен следовать нескольким дополнительным правилам (таким как указывать все исходные фай��ы во время компиляции вместо использования директивы include), что обеспечит способность прямого взаимодействия со средой .NET, то есть позволит использовать классы, написанные на PHP, прямо из C#.
История создания
[править | править код]Согласно заявлению Microsoft, главной целью проекта является возможность запуска существующих PHP-скриптов с сохранением полной функциональности в среде .NET без их какого-либо изменения.
Приложения, запускающиеся под Phalanger’ом
[править | править код]Примечания
[править | править код]Ссылки
[править | править код]- www.php-compiler.net Архивная копия от 10 декабря 2004 на Wayback Machine
- www.codeplex.com/Phalanger