Les progrès de php7 sont énormes, mais de grands progrès signifient aussi de grands changements. De nombreuses extensions des anciennes versions de php ne sont plus compatibles. Heureusement, php7 est livré avec de nombreuses extensions, comme l'extension intl.so. Ce qui suit explique comment installer l'extension intégrée intl dans la version php7.2.5 du système centos7.2.
Il est vraiment nécessaire d'enregistrer la méthode d'extension d'installation de php7 et supérieur. Certains tutoriels sur Internet sont vraiment incomplets. Ce n'est pas que d'autres l'ont délibérément manqué, principalement parce que. ils Il n'y a aucune exigence dans ce domaine pendant le processus d'écriture, donc ce problème ne sera pas rencontré. Parlons maintenant des écueils rencontrés.
Tout d'abord, php7 a fait d'énormes progrès par rapport aux versions précédentes, il est donc nécessaire de l'utiliser. Cependant, de gros progrès signifient de gros changements. De nombreuses extensions des anciennes versions de php ne sont plus compatibles. Heureusement, php7 est livré avec de nombreuses extensions, comme l'extension intl.so. Ce qui suit installera l'extension intl intégrée dans la version php7.2.5 du système centos7.2 :
1. PHP intl est une extension internationale et un wrapper pour la bibliothèque ICU. Par conséquent, avant d'installer l'extension PHP intl, vous devez d'abord installer la bibliothèque ICU. Les étapes spécifiques pour installer la bibliothèque 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
Installation terminée :
Remarque : vous pouvez également télécharger l'icu. version sur le site officiel : http://site.icu-project.org/download .
--prefix=/usr/local/icu est le chemin d'installation d'icu, qui peut également être trouvé via find / -name icu.
2. Installez l'extension intl.so
1. Entrez le code source de php7.2.5 : cd /usr/local/php/php-7.2.5/ext/intl
2. Exécutez : phpize. Si la commande est introuvable, complétez le chemin : /usr/local/php7/bin/phpize (qui est le chemin d'installation de php), et ce qui suit apparaîtra :
Configuring for: PHP Api Version: 20100412 Zend Module Api No: 20100525 Zend Extension Api No: 220100525
Trois. Exécutez la configuration
./configure --enable-intl --with-icu-dir=/usr/local/icu/ --with-php-config=/usr/local/php7/bin/php-config
Remarque : le chemin avant est le chemin d'installation d'icu et le chemin arrière est le chemin d'installation de php.
4. Extension de compilation : make
5. Copiez et développez dans le dossier cible
cp /user/local/php/php7.2.5/ext/intl/modules/intl.so /user/local/php7/lib/php/extensions/no-debug-non-zts-20170718
Remarque : vous pouvez également trouver / -name intl.so.
6. Définissez l'extension et ajoutez-la au fichier de configuration :
[intl] extension_dir = "/usr/local/php7/lib/php/extensions/no-debug-non-zts-20170718/" extension=intl.so
Big pit :: Lors de l'utilisation de phpinfo(), l'extension intl configurée est introuvable, indiquant que la configuration ne prend pas effet. . . . . .
Raison : lors de la compilation de php, il n'y a pas de --with-config-file-path=PATH pour spécifier le chemin php.ini. Le chemin par défaut est /usr/local/php7/lib. mettre php.ini Entrez simplement ce chemin par défaut. Vous pouvez également l'ajouter lors de l'installation et de la configuration de php, comme suit :
./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
Accès : fichier phpinfo() dans index.php.
Apprentissage recommandé : Tutoriel vidéo php
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!