2010-03-19 42 views
17

Abbiamo un'app Web PHP in esecuzione sul computer di un cliente. Per un aggiornamento, abbiamo un po 'di codice in C che vorremmo includere come libreria opaca nativa insieme all'app web PHP.Chiamare la funzione di libreria C/C++ da PHP

Come si fa a chiamare una lib di C/C++. funzione da PHP?

Non si può presumere che l'app PHP, chiamata dal server Web, abbia qualche tipo di permesso per chiamare un tipo di funzione exec(), eval() o system() per eseguire un driver wrapper C che in turn usa la libreria C/C++, quindi dovrebbe essere un uso diretto della libreria C all'interno del codice PHP.

risposta

7

La risposta da San Giovanni Johnson è corretta. Ma ora puoi anche noi la libreria php-cpp. Offre un bridge molto più semplice tra PHP e C++. Vedere http://www.php-cpp.com per ulteriori informazioni.

+10

Ciao! Devi rivelare che questa è la tua biblioteca. http://meta.stackexchange.com/a/59302/155739 Leggere attentamente le domande frequenti del sito. –

1

È possibile compilare il codice e utilizzare le funzioni di sistema, shell_exec o passthru per gestire l'output. La maggior parte degli host web ti consente di compilare codice C++, solo ssh sul tuo server, caricare il codice e compilarlo.

1

Un'altra opzione è quella di avere il codice C come demone, sempre in esecuzione, e lo script php connettersi ad esso ATTRAVERSO socket di dominio Unix o qualche esistente biblioteca per lo scambio di dati.

Ulteriori informazioni here

Problemi correlati