Tocyukiのブログ

ギターと柔術とプログラミングが好き!

PHP7.3環境でmecabを使えるようにする

とある業務でPHP5.5からPHP7.3へバージョンアップする必要が発生しまして、その環境ではphp-mecabをつかっているんですが、どうもPHP7系だとパッケージマネージャーでインストールできないっぽいので、ソースからコンパイルしてインストールする必要がありそうだ、ということで手順をメモとして残しておこうという次第でございま。

目次

環境情報

項目 詳細
OS Amazon Linux 2
PHPバージョン 7.3

mecabのインストール

以下からmecabのソースファイルとなるmecab-0.996.tar.gzをダウンロード

taku910.github.io

以下の手順でコンパイルおよびインストールを実施

tar -xvf mecab-0.996.tar.gz
cd mecab-0.996
./configure --enable-utf8-only
make
make install

mecab-ipadicのインストール

以下からmecab-ipadicのソースファイルとなるmecab-ipadic-2.7.0-20070801.tar.gzをダウンロード

taku910.github.io

以下の手順でコンパイルおよびインストールを実施

tar -xvf mecab-ipadic-2.7.0-20070801.tar.gz
cd mecab-ipadic-2.7.0-20070801
./configure --with-mecab-config=/usr/local/bin/mecab-config --with-charset=utf8
make
make install

php-mecabのインストール

以下のリポジトリからソースをクローンする

github.com

以下の手順でコンパイルおよびインストールを実施

cd php-mecab/mecab
phpize
./configure --with-mecab=/usr/local/bin/mecab-config
make
make install

動作確認

動作確認用PHPプログラム

<?php
$str = "すもももももももものうち";
$mecab = new \MeCab\Tagger(array('-O' => 'chasen'));
echo $mecab->parse($str) . PHP_EOL;

実行結果

$ php test.php 
すもも  スモモ  すもも  名詞-一般
も      モ      も      助詞-係助詞
もも    モモ    もも    名詞-一般
も      モ      も      助詞-係助詞
もも    モモ    もも    名詞-一般
の      ノ      の      助詞-連体化
うち    ウチ    うち    名詞-非自立-副詞可能
EOS