Extension PHP/PERL

Extension PHP/PERL - C++ - Programmation

Marsh Posté le 10-04-2005 à 10:02:45    

Mon programme doit générer dynamiquement une page HTML (genre server_status). Et la génération de celle-ci tient compte de la valeur des variables d'état de mon programme. Je ne veux pas coder de DSEL pour cette application. Je pensais donc à integrer PERL ou PHP. Comment interfacer du code PERL/PHP à un programme C++ ?  
 
Pour des raisons évidentes de performances, j'ai écarté l'execution de l'interpreteur - SYSTEM("php code.php" ) - et le passage par fichier .html.
 
Merci d'avance pour votre coup de main.  :jap:  
 

Reply

Marsh Posté le 10-04-2005 à 10:02:45   

Reply

Marsh Posté le 24-04-2005 à 15:08:18    

Hello,
 
Je suis a peu pres dans le meme cas que toi, je dois appeler depuis un programme C++, un srcipt php, mais je ne sais pas trop comment récupérer le resultat (l'affichage) du script.
Tu sembles ecarter l'appel a la fonction system(), par quoi veux tu la remplacer ?
As tu trouvé une solution a ta question ?
 
Merci d'avance et bon courage pour tes recherches

Reply

Marsh Posté le 24-04-2005 à 15:26:32    

Je n'ai pas encore trouvé de solution, faute de temps. Mais la question reste d'actualité pour moi aussi.
 
Passer par une commande systeme me parait être la solution la moins interessante aussi bien en terme de qualité du code que de prise de connaissance. Il doit sans doute exister un parser php avec une API C/C++, suffit de trouver...

Reply

Marsh Posté le 24-04-2005 à 15:29:19    

arf :) comme tu dis suffit de trouver.
 
c'est clair que l'appel de system ne retourne pas assez d'information (seul une valeur de retour) et il est plus qu'utile dans mon cas de recupérer le texte renvoyé par php, et a ce que je vois pour toi aussi.

Reply

Marsh Posté le 24-04-2005 à 15:45:05    

Le problème est pas là. La récupération du fichier généré par le php est tout à fait possible en venant lire la sortie de l'interpreteur. Ca doit donner qqchose du genre : system("php.exe toto.php > result.html" ); ifstream( "result.html" ); [...]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed