出于技术储备和团队目前架构走向等多方面因素,决定稍稍研究下PHP嵌入式开发,入个门。php
下载最新的PHP源码,编译,安装,笔者系统Ubuntu 16。linux
在macOS折腾了下,各类问题,决定老老实实用linux,等之后熟练了,在折腾macOS,毕竟这上面开发工具比较方便c++
编译安装PHPapi
./configure --enable-embed make make install cp ./libs/libphp7.so /lib/
Hello Worldphp7
#include "sapi/embed/php_embed.h" #include <unistd.h> int main(int argc, char * argv[]){ PHP_EMBED_START_BLOCK(argc,argv); char * script = " echo 'Hello World!',PHP_EOL;"; while (true){ zend_eval_string(script, NULL, "Hello World!" TSRMLS_CC); sleep(1); } PHP_EMBED_END_BLOCK(); return 0; }
编译架构
gcc -o embed main.c -I/usr/local/include/php/ -I/usr/local/include/php/main -I/usr/local/include/php/Zend -I/usr/local/include/php/TSRM -Wall -g -lstdc++ -L/usr/local/lib -lphp7
运行工具
./embed
输出结果开发工具
Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World!
更多架构、PHP、GO相关踩坑实践技巧请关注个人公众号:PHP架构师code