GMOクラウドVPSを借りてるんだけどPLESKが入っているテンプレートを借りてるのでSSHのコマンドがPHP5.4のままで苦労した。
おかげでphpizeしてもphp5.4でコンパイルされてしまうからApacheのPHP7xでは利用出来ずエラーとなって苦労した。
mecabをPHPから触れるようにした時のメモと健忘録
mecab設定ファイルの場所
/usr/local/etc/mecabrc
ここで日常的に使う辞書ファイルの設定やユーザー辞書の場所を指定して使えるようになる
ユーザー辞書の場所
標準辞書 /usr/local/lib/mecab/dic/ipadic カスタム辞書 /usr/local/lib/mecab/dic/mecab-ipadic-neologd
ユーザー辞書の作り方
適当なファイル名(CSV)を作って、その場所にcdで移動してコンパイルする(バイナリ辞書)
ユーザー辞書CSVのフォーマット
表層形,左文脈ID,右文脈ID,コスト,品詞,品詞細分類1,品詞細分類2,品詞細分類3,活用形,活用型,原形,読み,発音
例:ココナッツケーキ,,,10,名詞,一般,*,*,*,*,ココナッツケーキ,ココナッツケーキ,ココナッツケーキ
コンパイル時のコマンド
# -d DIR: システム辞書があるディレクトリ # -u FILE: コンパイルされたユーザー辞書を保管する場所 # -f charset: CSVの文字コード # -t charset: バイナリ辞書の文字コード $ /usr/local/libexec/mecab/mecab-dict-index \ -d /usr/local/lib/mecab/dic/mecab-ipadic-neologd \ -u user.dic \ -f utf-8 \ -t utf-8 \ user_dict.csv #このファイルがある場所で実行する
上記を実行して user.dic と言うファイルが生成されたら成功
コストの自動推定機能
更に -a オプションを付ける事で未入力の項目を自動で推定して設定してくれます。
が!しかし、自動推定機能を使用する場合は -m でモデルファイルを指定する必要があります。
model_file については作者Taku様のサイトでダウンロード出来ます。
/usr/local/libexec/mecab/mecab-dict-index \ -d /usr/local/lib/mecab/dic/mecab-ipadic-neologd \ -m model_file \ -u user.dic \ -f utf-8 \ -t utf-8 \ -a user_dict.csv
php-mecabの関数一覧

php-mecabの関数一覧
$mecab = new \MeCab\Tagger(); $info = $mecab->dictionaryInfo(); var_dump($info);
newでインスタンス生成してから表のメソッドを実行してやればおけ!
辞書登録:
参考にしたサイト:http://hatappi.hateblo.jp/entry/2017/06/08/180634
コメント