プロが教えるわが家の防犯対策術!

PHPかJavaScriptにてテキストボックスに入力された日本語をローマ字に変換する仕組みを探しています。

仮名だけなら手におえますが、漢字になると手におえません。
Webサイト上で処理したいため、ツールではなくライブラリやサンプルコードを探しています。
ご存じならご教授ください。

A 回答 (1件)

「形態素解析ライブラリ」もしくは「形態素解析API」の利用が必須です。

前者は「MeCab」、後者はYahoo!JAPANの「日本語形態素解析」が有名です。

…が、前者はインストール、後者は登録の手間がかかるので、手軽に試したいなら
http://140note.hitonobetsu.com/apipage/mp
のようなところで利用させてもらってもいいんじゃないでしょうか。

【サンプル】(全角スペースでインデント)

<?php

function convert_into_katakana($sentence) {
 $ch = curl_init();
 curl_setopt_array($ch, [
  CURLOPT_URL => 'http://api.hitonobetsu.com/mp/analysis?str=' . urlencode($sentence),
  CURLOPT_RETURNTRANSFER => true,
 ]);
 return implode(array_map(
  function ($item) {
   return isset($item->reading) ? $item->reading : '';
  },
  (array)json_decode(curl_exec($ch))
 ));
}
var_dump(convert_into_katakana('質問サイトで回答する'));

なお、JavaScriptで実装する場合もほぼ同様ですが、クロスドメイン制約云々で面倒だったらJSONPを利用するのが手っ取り早いと思います。
    • good
    • 0
この回答へのお礼

サンプルコードまでつけていただきうれしいです。

試すと驚くほど簡単にできました。一気に作業がすすみました。
ありがとうございます。

お礼日時:2014/10/18 07:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!