php7 の進歩は非常に大きなものですが、大きな進歩は大きな変化も意味します。古いバージョンの php の多くの拡張機能は互換性がなくなりました。幸いなことに、php7 には intl.so 拡張機能などの多くの拡張機能が付属しています。以下では、centos7.2 システムの php7.2.5 バージョンに組み込み拡張子 intl をインストールする方法を紹介します。
php7 以降のインストール拡張方法を記録する必要があります。インターネット上のいくつかのチュートリアルは非常に不完全です。他の人が意図的にそれを見逃したわけではありません。主に次の理由によります。書き込みプロセス中にこの領域に要件がなかったため、この問題は発生しませんでした。次に、遭遇する落とし穴について話しましょう。
まず、php7 は以前のバージョンに比べて大きく進歩しているので、それを使う必要がありますが、大きな進歩ということは大きな変化を意味しており、古いバージョンの php の拡張機能の多くは互換性がなくなりました。幸いなことに、php7 には intl.so 拡張機能などの多くの拡張機能が付属しています。以下は、centos7.2 システムの php7.2.5 バージョンに組み込み拡張子 intl をインストールします:
1. 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 をダウンロードすることもできます。公式 Web サイトからのバージョン: http://site.icu-project.org/download 。
--prefix=/usr/local/icu は、icu のインストール パスです。これは、find / -name icu によっても見つけることができます。
2. 拡張機能 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.拡張機能をコンパイルします:
5 を作成します。ターゲット フォルダーにコピーして展開します
cp /user/local/php/php7.2.5/ext/intl/modules/intl.so /user/local/php7/lib/php/extensions/no-debug-non-zts-20170718
注: / -name intl.so も見つかります。
6.拡張子を設定し、設定ファイルに追加します。
[intl] extension_dir = "/usr/local/php7/lib/php/extensions/no-debug-non-zts-20170718/" extension=intl.so
大きな落とし穴::: phpinfo() を使用すると、設定された intl 拡張子が見つからず、設定が有効にならないことが示されます。 。 。 。 。 。
理由: php をコンパイルするときに、php.ini パスを指定する --with-config-file-path=PATH がありません。デフォルトのパスは /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() ファイル。
推奨学習: php ビデオ チュートリアル
以上がphp7に付属する拡張機能intlをcentos7.2システムにインストールする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。