编程语言
首页 > 编程语言> > 如何修复PHP模块线程安全/非线程安全不匹配?

如何修复PHP模块线程安全/非线程安全不匹配?

作者:互联网

这超出了错误日志:

PHP Warning: PHP Startup: BOPEE Extension: Unable to initialize module
Module compiled with build ID=API20090626,TS,VC9
PHP    compiled with build ID=API20090626,NTS,VC9
These options need to match
 in Unknown on line 0

PHP Warning:  PHP Startup: CustomExt Module: Unable to initialize module
Module compiled with build ID=API20090626,TS,VC9
PHP    compiled with build ID=API20090626,NTS,VC9
These options need to match
 in Unknown on line 0

我如何获得PHP的非线程安全源?我在windows.php.net/download上找到的唯一下载链接是http://windows.php.net/downloads/releases/php-5.3.2-src.zip,这似乎是线程安全代码—或者是否有某种方式告诉源它实际上是非线程安全的?

我已经尝试在configure.bat的命令行上放置–disable-zts但是虽然这对configure.bat的输出有很好的影响,但它似乎并没有使源更少线程安全.

解决方法:

在上面的例子中,PHP本身是非线程安全的(NTS),但该模块是线程安全的(TS).该模块是线程安全的,因为定义了Zend线程安全ZTS常量(在模块的源代码中或在VS 2008的预处理器定义中).

简单地将ZTS = 1更改为ZTS = 0不起作用.
您必须完全删除ZTS的定义.

标签:php-extension,php,winapi
来源: https://codeday.me/bug/20190827/1740022.html