はじめに
申し訳ありませんが、完全なる初心者です。
用語等、簡単にして頂けると助かります。
質問
MeCabをPHPで使いたいので、
をsudo make install
しました。
そして以下のPHPコードをMacの/Users/ユーザ名/Sites/
で、実行したのですが、「接続がリセットされました」(FireFox表示)が表示されます。
php
1<?php 2 3//phpinfo(); 4 5$str = 'なんで、MeCabコマンドは動くし、Python+MeCabは動くのに、PHP-MeCabは動かんのじゃ!!!'; 6$options = array('-d', '/usr/local/lib/mecab/dic/ipadic'); 7 8$mecab = new MeCab_Tagger($options); 9$nodes = $mecab->parseToNode($str); 10 11foreach ($nodes as $n) 12{ 13 echo $n->getSurface() . "<br />"; 14 echo $n->getFeature() . "<br />"; 15} 16?> 17
ずっと原因を探っているのですが、これかなというものを発見。
以下の図は、php_info();
の表示の一部です。
MeCab LibraryのCompiledとLinkedのバージョンが違います。
これが何を指しているのか、私の今の知識では分かりませんが、これのせいでしょうか?
もし、これが原因であれば、どのようにして修正するのでしょうか?
ご存じの方がいらっしゃいましたら、ご教示頂けますと幸いです。
また、他に必要な情報があれば、おっしゃって頂けますと幸いです。
なお、ターミナル上でMeCabは正しい動作をしますし、Python(2系)とMeCabのバインドはできており、Pythonから形態素解析を行うことはできます。
ただし、localhost(Apache)でPython+MeCabを動かそうとすると、同様のエラーが表示されます。
環境
- MacOS X Yosemite (10.10.5)
- PHP 5.5.36 (cli) (built: Jun 12 2016 23:47:46)
- mecab of 0.996
参考サイト様
- phpでmecab
- 【CentOS6】YUM(Remi)経由でPHP5.4からPHP5.6に移行
- 形態素解析「MeCab」と「php_mecab」を使った(複合)名詞の抽出
- MeCab と php-mecab のインストールメモ(CentOS7.1)
- PHPの拡張モジュールGDが動くまでの試行錯誤
過去の似た自分の質問
あなたの回答
tips
プレビュー