我在选择 PHP 和 MongoDB 版本时遇到了一个大问题。
我有一个使用 PHP 5 MongoDB 驱动程序在 PHP5.6 中开发的项目,我愿意将 PHP 与 ZTS 和 pThreads 一起使用以进行并行执行。不幸的是,当我使用 ZTS 编译 PHP 时,pthreads 编译器在设置 PHP 时出现错误
/usr/src/php-5.6.12/meta_ccld -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 -Iext/pthreads/ -I/usr/src/php-5.6.12/ext/pthreads/ -DPHP_ATOM_INC -I/usr/src/php-5.6.12/include -I/usr/src/php-5.6.12/main -I/usr/src/php-5.6.12 -I/usr/src/php-5.6.12/ext/date/lib -I/usr/src/php-5.6.12/ext/ereg/regex -I/usr/include/libxml2 -I/usr/src/php-5.6.12/ext/mbstring/oniguruma -I/usr/src/php-5.6.12/ext/mbstring/libmbfl -I/usr/src/php-5.6.12/ext/mbstring/libmbfl/mbfl -I/usr/src/php-5.6.12/ext/sqlite3/libsqlite -I/usr/src/php-5.6.12/ext/pthreads -I/usr/src/php-5.6.12/ext/zip/lib -I/usr/src/php-5.6.12/TSRM -I/usr/src/php-5.6.12/Zend -D_REENTRANT -I/usr/include -g -fvisibility=hidden -pthread - O0 -Wall -DZTS -c /usr/src/php-5.6.12/ext/pthreads/php_pthreads.c -fPIC -DPIC -o ext/pthreads/.libs/php_pthreads.o
在 /usr/src/php-5.6.12/ext/pthreads/php_pthreads.c:22:0 包含的文件中:
ext/pthreads/src/pthreads.h:72:35: 致命错误:
Zend/zend_inheritance.h: No such file or directory #include
^
编译终止。
make: *** [ext/pthreads/php_pthreads.lo] 错误 1
现在,我坚持使用 PHP5 的原因可能是一件事,这显然是因为 php5 的 MongoDB 驱动程序。带有 ZTS 的 PHP7 可以完美运行,但我再次无法连接 MongoDB,因为 php7 具有不同的 mongoDB 驱动程序。
请指导我将代码更新到 PHP7 Mongo 是否只是我留下的解决方案?或者有什么解决方法吗?
提前致谢。