(/usr/local/bin/にmecabがあることは確認済み)
「XREAでChasen(PHPから使う)」でのテストコードの、$pathの内容を"/usr/local/bin/mecab"に変えただけのテストページを作って試してみたら、あっさり動作。ただし文字化け。
「UTF-8のままで良いのか?」と、mb_convert_encodingを使っているところを削除して再度トライ。正常な結果が得られました。
つまり
XREA(のs222サーバ)では、MeCabのデフォルトの文字コードはUTF-8
ということのようです。
以下にそのときのコード。
(今回の私の用途では品詞等の情報は不要で、単に文を分解できればそれで良かったので、MeCabを分かち書きモードで動作させてます)
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>MeCab 分かち書きテスト</title>
</head>
<body>
<?php
$path = '/usr/local/bin/mecab -O wakati';
$str = "浜松駅の耐震工事のために長いこと利用できなかったekimachi eastの工事が、予定通り3月15日までに終了した。これでマクドナルドやミスドにまた行けるようになったし、地下の谷島屋も復活した。";
$results = popen ("echo $str | $path ", 'r');
while ($chasen_result = fgets($results)) {
echo $chasen_result.'
';
}
pclose ($results);
?>
</body>
</html>
まあ、ちょっとしたテストコードなんで、変数名が$chasen_resultのまんまだったりするのは…気にしない。