初始化php

    1. #ifdef ZTS
    2. void ***tsrm_ls;
    3. #endif
    4. static void startup_php(void)
    5. {
    6. /* Create "dummy" argc/argv to hide the arguments
    7. * meant for our actual application */
    8. int argc = 1;
    9. char *argv[2] = { "embed4", NULL };
    10. php_embed_init(argc, argv PTSRMLS_CC);
    11. }
    12. {
    13. php_embed_shutdown(TSRMLS_C);
    14. }
    15. static void execute_php(char *filename) {
    16. zend_first_try {
    17. char *include_script;
    18. spprintf(&include_script, 0, "include '%s';", filename);
    19. zend_eval_string(include_script, NULL, filename TSRMLS_CC);
    20. efree(include_script);
    21. } zend_end_try();
    22. int main(int argc, char *argv[])
    23. {
    24. if (argc <= 1) {
    25. printf("Usage: embed4 scriptfile");
    26. return -1;
    27. }
    28. startup_php();
    29. execute_php(argv[1]);
    30. shutdown_php();
    31. return 0;
    32. }