在 PHP 中使用 xdiff 函数
Using xdiff functions in PHP
我在我的 CentOS 服务器上 运行ning PHP7,我知道 xdiff
函数需要添加合适的 PECL 包。
我有运行以下:
pecl install xdiff-2.0.1
在我的 php.ini
文件中,我尝试过:
extension=xdiff.so
和
extension=/usr/lib64/php/modules/xdiff.so
在这两种情况下,当我尝试使用 xdiff_string_patch()
:
时都会出错
Call to undefined function xdiff_string_patch()
我想我错过了一步,但我不知道。我需要做什么才能让它正常工作?
所以,扩展库似乎确实存在,并且您使用的是正确的 php.ini
,但是,在 运行 一个 PHP 脚本中弹出以下警告:
PHP Warning: PHP Startup: xdiff: Unable to initialize module Module compiled with module API=20151012 PHP compiled with module API=20170718 These options need to match in Unknown on line 0 /etc/php.d/40-xdiff.ini
此警告表明模块与您的 PHP 二进制 之间 版本不匹配。
要解决此问题,请卸载 PECL 扩展并将您的 php-dev
二进制文件升级到适合您的 PHP 版本的版本,这取决于您的发行版。
此外,根据您的配置 (php -i
),更新您的 PECL 设置可能会有用:
(sudo) pecl config-set php_ini /etc/php.ini
(sudo) pecl config-set php_bin $(which php)
我在我的 CentOS 服务器上 运行ning PHP7,我知道 xdiff
函数需要添加合适的 PECL 包。
我有运行以下:
pecl install xdiff-2.0.1
在我的 php.ini
文件中,我尝试过:
extension=xdiff.so
和
extension=/usr/lib64/php/modules/xdiff.so
在这两种情况下,当我尝试使用 xdiff_string_patch()
:
Call to undefined function xdiff_string_patch()
我想我错过了一步,但我不知道。我需要做什么才能让它正常工作?
所以,扩展库似乎确实存在,并且您使用的是正确的 php.ini
,但是,在 运行 一个 PHP 脚本中弹出以下警告:
PHP Warning: PHP Startup: xdiff: Unable to initialize module Module compiled with module API=20151012 PHP compiled with module API=20170718 These options need to match in Unknown on line 0 /etc/php.d/40-xdiff.ini
此警告表明模块与您的 PHP 二进制 之间 版本不匹配。
要解决此问题,请卸载 PECL 扩展并将您的 php-dev
二进制文件升级到适合您的 PHP 版本的版本,这取决于您的发行版。
此外,根据您的配置 (php -i
),更新您的 PECL 设置可能会有用:
(sudo) pecl config-set php_ini /etc/php.ini
(sudo) pecl config-set php_bin $(which php)