php7的进步是巨大的,但是进步大也就意味着改动大,很多老版本php的扩展已经不能再兼容了。好在php7自己带了很多扩展,比如intl.so扩展。下面将介绍在centos7.2系统中php7.2.5版本中安装自带的扩展intl的方法。

centos7.2系统中如何安装php7自带的扩展intl-LMLPHP

实在是有必要将php7及其以上版本的安装扩展方法记录一下,网上有些教程实在是不全,倒不是别人故意漏写,主要是他们在写的过程中没有涉及的这方面的需求,也就碰不到这个问题。现在将遇到的坑说说。

首先php7跟以前版本的进步是巨大的,所以有必要用,但是进步大也就意味着改动大,很多老版本php的扩展已经不能再兼容了。好在php7自己带了很多扩展,比如intl.so扩展。以下将在centos7.2系统中php7.2.5版本中安装自带的扩展intl:

一.PHP intl 是国际化扩展,是ICU 库的一个包装器。所以在安装PHP intl扩展前要先安装ICU库,安装ICU库的具体步骤:

mkdir  /usr/local/icu 
cd   /usr/local/icu 
wget http://download.icu-project.org/files/icu4c/52.1/icu4c-52_1-src.tgz
tar xf icu4c-52_1-src.tgz 
cd icu/source 
mkdir /usr/local/icu 
./configure --prefix=/usr/local/icu 
make && make install
登录后复制

安装完毕:

注:icu版本你也可以去官网下载:http://site.icu-project.org/download 。

--prefix=/usr/local/icu为icu的安装路径,也可以通过find / -name icu查找。

二.安装扩展intl.so

1。进入php7.2.5源码:cd /usr/local/php/php-7.2.5/ext/intl

2。运行:phpize ,找不到命令时,将路径补全:/usr/local/php7/bin/phpize(是php的安装路径),出现如下:

Configuring for:
PHP Api Version:         20100412
Zend Module Api No:      20100525
Zend Extension Api No:   220100525
登录后复制

三。运行配置

 ./configure  --enable-intl --with-icu-dir=/usr/local/icu/  --with-php-config=/usr/local/php7/bin/php-config
登录后复制

注:前面路径为icu的安装路径,后面路径为php的安装路径。

4。编译扩展:make

5。复制扩展到目标文件夹

cp /user/local/php/php7.2.5/ext/intl/modules/intl.so  /user/local/php7/lib/php/extensions/no-debug-non-zts-20170718
登录后复制

注意:也可以find / -name intl.so 查找。

6。设置扩展加入配置文件中:

[intl]
extension_dir = "/usr/local/php7/lib/php/extensions/no-debug-non-zts-20170718/"
extension=intl.so
登录后复制

大坑:::采用phpinfo()时,无法找到配置的intl扩展,说明配置没有生效。。。。。。

原因:在编译php时没有 --with-config-file-path=PATH 指定php.ini路径,默认的路径为/usr/local/php7/lib,只需要将php.ini放入这个默认的路径即可。你也可以安装配置php时加入,如下:

./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath -enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip --enable-pcntl --with-curl --with-fpm-user=nginx --enable-ftp --enable-session --enable-xml --with-apxs2=/usr/bin/apxs
登录后复制

访问:index.php中phpinfo()文件。

centos7.2系统中如何安装php7自带的扩展intl-LMLPHP

推荐学习:php视频教程

以上就是centos7.2系统中如何安装php7自带的扩展intl的详细内容,更多请关注Work网其它相关文章!

08-29 22:10