Embed

    • VM类就是ZendVM虚拟机环境,构造方法中自动初始化VM。由于使用了大量全局变量,一个进程内只能创建一个VM
    • VM对象析构时自动销毁ZendVM
    • VM初始化后,可以在C++程序中调用中提供的接口与PHP进行交互

    编译程序

    1. PHP_INCLUDE = `php-config --includes`
    2. PHP_LIBS = `php-config --libs`
    3. PHP_LDFLAGS = `php-config --ldflags`
    4. all: embed.cpp
    5. c++ -DHAVE_CONFIG_H -g -o embed -O0 embed.cpp -std=c++11 ${PHP_INCLUDE} ${PHP_LDFLAGS} -lphp7 -lphpx ${PHP_LIBS}
    • -lphp7载入PHP7的动态连接库
    • -lphpx载入动态连接库