已安装国际扩展,但在phpinfo()中看不到

时间:2020-02-13 13:16:32

标签: php linux centos intl webmin

我正在将centos 7与lamp + webmin控制面板php 7.2一起使用,我需要intl intl扩展名,我遵循了google的一些教程,并安装了intl扩展名(我确定,因为如果我再次尝试安装,它说已经安装了最新版本更新)请参见波纹管 [root@xxxxxxx ~]# sudo yum --enablerepo=remi install php-intl Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * Webmin: download.webmin.com * base: ftp.hosteurope.de Excluding mirror: mirror.fra10.de.leaseweb.net * centos-sclo-rh: mirror.alpix.eu * centos-sclo-sclo: mirror.checkdomain.de Excluding mirror: mirror.de.leaseweb.net Excluding mirror: mirror.nl.leaseweb.net * epel: ftp-stud.hs-esslingen.de * extras: centos.mirror.iphh.net * remi: remi.mirror.liteserver.nl * remi-php56: remi.mirror.liteserver.nl * remi-php72: remi.mirror.liteserver.nl * remi-safe: remi.mirror.liteserver.nl * updates: ftp.hosteurope.de Package php-intl-7.2.27-1.el7.remi.x86_64 already installed and latest version Nothing to do 已在两个php.ini中都添加了extension=php_intlextension=intl

配置文件(php.ini)路径/ etc / opt / rh / rh-php72

已加载的配置文件/home/two4cloudspace/etc/php7.2/php。

,然后重新启动,但仍然无法在phpinfo()输出中找到国际扩展 在我的phpinfo()输出中,显示我的模块目录为

/ opt / rh / rh-php72 / root / usr / lib64 / php / modules

但是php -r "echo ini_get('extension_dir');"显示我的模块目录是

/ usr / lib64 / php / modules

,我试图在两个目录中都找到intl.so文件,并且在

中找到了该文件。

/ usr / lib64 / php / modules

但在

中找不到

/ opt / rh / rh-php72 / root / usr / lib64 / php / modules

,然后我下载了intl.so并上传到/opt/rh/rh-php72/root/usr/lib64/php/modules,并重新启动但仍然是同样的问题。 如果我命令php -m,我可以看到所有模块,其中包含intl。

但是我无法在phpinfo()中找到它,或者需要在其中进行国际扩展的地方说它缺少国际 我在做什么错或如何解决?

1 个答案:

答案 0 :(得分:1)

您正在混淆提供PHP的不同RPM软件包(运行rpm -qa | grep php | sortrpm -qf $(which php),它将在前面提到)。目录/opt/rh/rh-php72/root/usr/lib64/php/modules属于rh-php72-php,而不属于Remi。因此,sudo yum install --enablerepo=centos-sclo-rh rh-php72-php-intl在您需要/opt/rh/rh-php72/root/usr/lib64/php/modules/intl.so时会有所帮助;不要忘了之后重启网络服务器(如果您不使用php-fpm而不是mod_php)。