php7.2 なKUSANAGI環境に php-intl をインストールします。
(php7.3な環境も同じ方法でいけます)
なかなか情報がないのと、yumで一発導入とはいかなかったので、力業で対応しています。
このため今後のアップデート等で対応が必要になるため、内容が理解できている人向けです。
外部レポジトリから該当のrpmファイルをダウンロード
Remi’s RPM repository から php72-php-intl をダウンロードします。
# yum install --downloadonly --downloaddir=[work-dir] --enablerepo=remi php72-php-intl
当方のphp環境が kusanagi-php7-7.2.13-1.noarch のため、インストールするとコンフリクトが発生してしまい、面倒でした。
ですので、ダウンロードします。
rpmファイルを展開する
# rpm2cpio php72-php-intl-7.2.13-2.el7.remi.x86_64.rpm | cpio -id
# find
.
./etc
./etc/opt
./etc/opt/remi
./etc/opt/remi/php72
./etc/opt/remi/php72/php.d
./etc/opt/remi/php72/php.d/20-intl.ini
./opt
./opt/remi
./opt/remi/php72
./opt/remi/php72/root
./opt/remi/php72/root/usr
./opt/remi/php72/root/usr/lib64
./opt/remi/php72/root/usr/lib64/php
./opt/remi/php72/root/usr/lib64/php/modules
./opt/remi/php72/root/usr/lib64/php/modules/intl.so
ファイルをコピーする
ファイルが2つ展開されましたので、それぞれコピーしていきます。
# cp ./etc/opt/remi/php72/php.d/20-intl.ini /etc/php7.d/extensions/
# cp ./opt/remi/php72/root/usr/lib64/php/modules/intl.so /usr/local/php7/lib/php/extensions/no-debug-non-zts-20170718/
サービスを再起動する
あとはサービスを再起動してモジュールをロードさせれば完了です。
この方法は、手動でファイルを配置していますので、yum等のバージョン管理はできませんし、システムの更新を行った際に問題が発生する可能性もあります。
大変にリスキーではありますが、とりあえず動けばよい、何かあっても対応できるスキルがあれば、やっていることは難しいことではないので問題ないかと思います。