简体   繁体   中英

Calling PHP From C

I am trying to write an application that will use PHP as a scripting language. The application is a CGI handler, and I want to be able to call PHP pages from it.

I am looking for code that will let me initialize PHP inside the C program and then pass it either a buffer containing the php code, or a filename, for it to parse. I want to take the output from that and be able to run it through a function in the CGI program.

The book Extending and Embedding PHP by Sara Golemon ( amazon ) has a chapter about embedding PHP in a C programm, which might interest you.

If you want a preview, from what I remember, some pages are avaible on Google books, for instance.


Here's a quick quote (from the beginning of chapter 20.) :

In addition to loading external scripts, as you saw in the last chapter, your PHP embedding application can also execute smaller snippets of arbitrary code using the underlying function that implements the familiar userspace eval() command.

Try the PHPEmbed library. It's for C++, rather than C, but it might still work for you, depending on the project requirements.

I would check out how they've implemented the php command line binary. It seems the main function is in php_cli.c

And it calls php_execute_scrip and a bunch of other functions which looks promising.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM