2010-03-19 11 views
17

Nous avons une application web PHP fonctionnant sur la machine d'un client. Pour une mise à jour, nous avons un peu de code en C que nous aimerions inclure en tant que bibliothèque opaque native avec l'application web PHP.Appel de la fonction de la bibliothèque C/C++ à partir de PHP

Comment faire pour appeler une bibliothèque C/C++. fonction de PHP?

On ne peut pas supposer que l'application PHP, appelée par le serveur Web, dispose de n'importe quel type d'autorisation pour appeler une fonction de type exec(), eval() ou system() pour exécuter un pilote C wrapper tourner utilise la bibliothèque C/C++, il devrait donc être une utilisation directe de la bibliothèque C dans le code PHP.

Répondre

7

La réponse de St. John Johnson est correct. Mais vous pouvez maintenant nous aussi la bibliothèque php-cpp. Il offre un pont beaucoup plus facile entre PHP et C++. Voir http://www.php-cpp.com pour plus d'informations.

+10

Hi! Vous devez indiquer que ceci est votre bibliothèque. http://meta.stackexchange.com/a/59302/155739 Veuillez lire attentivement la FAQ du site. –

1

Vous pouvez compiler votre code et utiliser les fonctions système, shell_exec ou passthru pour gérer la sortie. La plupart des hébergeurs vous permettent de compiler du code C++, juste ssh sur votre serveur, télécharger le code et le compiler.

1

Une autre option est d'avoir le code C en tant que démon, toujours en cours d'exécution, et le script php connecter à throught sockets de domaine unix ou une bibliothèque existante pour échanger des données.

Plus d'info here

Questions connexes