人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

xrea.comでは全サーバにkakasiがインストール済みだそうです。
http://sb.xrea.com/archive/index.php/t-8557.html
が、以下のようなtest.phpファイルを作成しましたが、echoが何も出力しません。(s32, s56サーバにて)
kakasiをインストールしたローカルの Mac OS X 10.4.6 (PHP 4.4.1 / Apache 1.3.33) では/usr/local/bin/kakasiで出力しました。
どう改良したらいいでしょうか。

<?php
$word='日本語のコメントを受け取り、分かち書きをしたい。';
$cmd="echo '$word' | /usr/local/php/bin/kakasi -w";
echo exec($cmd, $array);
$cmd="echo '$word' | /usr/local/bin/kakasi -w";
echo exec($cmd, $array);
?>

●質問者: kazumichi
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:Apache echo Kakasi Mac OS X PHP
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● abunakunai
●60ポイント ベストアンサー

まずは.htaccessを設定して、mod_phpの動作をcgiとして

動作させることが必要です。

http://sb.xrea.com/showthread.php?t=10744

phpがsafe_modeで動いているようなので、popen()やexec()が動作しないからです。

.htaccss
<files kakasi.php>
AddHandler application/x-httpd-phpcgi .php
</files>

次に私は以下のように設定しました。

kakasi.php
<?php
mb_internal_encoding('eucjp-win');
$input = 'eucjp-win';
$output = 'sjis-win';
$word = '日本語のコメントを受け取り、分かち書きをしたい。';
$kakasi_cmd = '/usr/local/bin/kakasi -w';
$result = exec('echo \''. $word. '\' | '. $kakasi_cmd);
echo mb_convert_encoding($result, $output, $input);
?>

これで、お望みの動作はするようです。

◎質問者からの返答

完璧な回答、誠に有り難うございました。

問題なく動作しました。

エンコードに関する記述も参考になりました。

今後またお見かけしたらよろしくお願いします。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ