ugrás a tartalomhoz

Phalanger és IronPHP - azaz PHP fejesztés .NET-en

Hojtsy Gábor · 2004. Dec. 29. (Sze), 09.12
Úgy tűnik a PHP integrálása a .NET keretrendszerrel sokakat nem hagy nyugodni. Alan Knowles készített annak idején egy koncepcionális megvalósítást, mely a "Helló világ" feladatot meg tudta oldani. Ez azonban még 2002-ben történt, azóta pedig Alan a Parrot felé fordult. Egy magányos fejlesztő és egy cseh programozókból álló csoport azonban azóta is nekiveselkedett az illesztésnek.

Az IronPHP egy magányos fejlesztő ötlete, melyben a PHP 5 nyelvi elemeit próbálja MSIL-re fordítani, hogy a kód futhasson .NET környezetben. Forráskódját egyelőre nem publikálta, hiszen célját nem közelítette meg kellőképpen, de a nyilvános megjelenítést ígéri.

A Phalanger sokkal ambíciózusabb célokat tűzött ki maga elé, és a leírás alapján úgy tűnik teljesíti is ezeket. Lehetővé teszi, hogy PHP 5 nyelven írt osztályainkat használjuk valamely más .NET nyelven, és fordítva. A PHP kiterjesztéseinek és függvényeinek egy részét újraimplementálták a .NET menedzselt környezetében, a többit pedig elérhetővé tették wrapperek segítségével, így bármely .NET nyelvből használhatjuk a PHP kiterjesztéseit. Ráadásul a köztes nyelvre fordításnak köszönhetően gyorsabban futhat a programunk, mintha bájtkód gyorsítótár nélküli PHP-t használnánk. A fordító pedig lehetővé teszi, hogy önálló futtatható állományokat készítsünk, vagy DLL-eket állítsunk elő. A Phalanger csomagban található még egy Visual Studio .NET integrációs eszköz, ami lehetővé teszi a PHP kódszínezés, hibakeresés használatát a fejlesztőeszközben.

Igaz, hogy mindez túl jól hangzik, de Harry Fuecks szerint az alapfunkciókra mindenképpen jól működik a Phalanger. Rámutat ugyanakkor, hogy a licenc szerint kereskedelmi célú projektekre nem használható, valamint a kód visszafejtését is tiltják a fejlesztők, ezért sajnos nem várható Mono kompatibilis megvalósítás. Én azt a furcsaságot vettem még észre, hogy bár PHP 5 funkcionalitást ígérnek, teljesítmény összehasonlításaikban mégis a PHP 4 sebességével és terherbírásával vetik össze a fejlesztésüket.