phpbar.de logo

Mailinglisten-Archive

[php] PHP in C++ integrieren

[php] PHP in C++ integrieren

Johannes Schlueter schlueter at phpbar.de
Son Dez 4 22:47:34 CET 2005


Hallo Michael,

On Sunday 04 December 2005 21:35, Michael Arndt wrote:
> Ich such seit einigen tagen im Internet nach einer Möglichkeit PHP 5 in
> C++ zu integrieren.
> Gibt zwar viele Scriptsprachen wie CSL mit denen das recht einfach geht,
> aber ich würde PHP bevorzugen, besonders wegen der Objektorientierung.
> Hab mir auch schon den Quellcode von php angeguckt, aber werd nur
> begrenzt schlau daraus :-[ .
>
> Hoffe das ist nicht die falsche Liste für sowas, vllt. hat ja mal jemand
> soetwas gemacht.

Also zunächst wäre zu klären was Du genau willst, willst Du PHP aus einer 
anderen Applikation heraus ausführen und den Interpreter einbinden oder nur 
Funktionen anbinden?

Letzteres geht recht einfach, einfach mal nach "extending PHP" suchen, sollte 
viele Treffer geben, interessanter Anfang dürften Artikel von Sara Golemon 
auf Zend.com sein. Ersteres ist weniger dokumentiert.

Zum einbinden in andere Applikationen gibt es von PHP die SAPI (= Server 
Application Programming Interface) Schnittstelle über die die Anbindungen an 
andere Anwendungen, primär Web-Server, gemacht werden. Beispiele dafür gibt 
es im php Sourcecode unter php-src/sapi/. Wenn das zu kompliziert ist reicht 
evtl. auch sapi/embed, das ist ein .so (bzw. .dll) die man bekommt wenn man 
php mit --with-embed (glaube ich, nicht nachgeschaut) kompiliert. Damit kann 
man dann recht einfach PHP initialisieren und Code ausführen. Wirklich Wissen 
zu dem ganzen Zeug gibt es nur in Form von Code ("Use the Code Luke") und als 
Wissen in Köpfen. Ein Buch, dass das am Rande behandelt ist "Advanced PHP 
Programming" von George Schlossnagle, Sara Golemon arbeitet an einem Buch 
über das Thema, dass irgendwann nächstes Jahr erscheinen soll.

Bei allem muss bedacht werden, dass es sich bei PHP um ein bewegliches Ziel 
handelt wo sich APIs immer mal ändern und die Änderungen nicht groß in 
Changelogs auftauchen und ob Du embed oder eigenes SAPI willst kann ich so 
auf Distanz nicht sagen...

johannes
-- 
Johannes Schlüter               Mayflower GmbH
Tel.: +49 89 24 20 54 33        Sendliger Str. 42a
Fax : +49 89 24 20 54 29        D-80331 München 
schlueter at mayflower.de          http://mayflower.de

php::bar PHP Wiki   -   Listenarchive