KUNISAN.JPブログ - 1411 / 1532 ページ

新規書き込み

PHP簡易英文スペルチェッカー

名前: 小川 邦久 リンク: http://kunisan.jp/ 日付: 2008年2月3日

米国Yahoo!の"Yahoo! Spelling Suggestion API"というサービスを利用して、英文スペルチェッカーを作成してみました。 プログラムもいたってシンプルで、英文をパラメーターとしてサービスを呼び出し、戻ってきた値のXMLタグを全て取り払うだけで、結果を取り出すことができます。

今回はブログパーツとして作成してみましたが、そのコードの一部(メインの部分)を公開します。実行にはYahoo! Developer Network ( http://developer.yahoo.com/ )でアプリケーションIDを取得する必要があるのでご注意ください。

■■簡易英文スペルチェッカー■■
<?php

//英文の取得
$sentence = $_GET[SENTENCE];

//スペースをプラスに変換(アドレス用)
$sentence2 = mb_eregi_replace(' ','+',$sentence);

//英文受け渡し用アドレス(●XXXXXXXXXXにご自分のアプリケーションIDを入れてください)
$addr = 'http://api.search.yahoo.com/WebSearchService/V1/spellingSuggestion
?appid=XXXXXXXXXX&query='.$sentence2;

//自動的に\が入ることがあるので、それを除去する処理
$sentence = stripcslashes($sentence);

//修正英文候補の取得
if ($sentence != "") {
$result = file_get_contents($addr);
//XMLタグの除去
$result = strip_tags($result);
//アンダーバーの除去
$result = mb_eregi_replace('_','',$result);
//改行の除去
$result = mb_eregi_replace("\n",'',$result);
}

//ブラウザー毎の表示領域の設定
$drow = (ereg("Firefox",$_SERVER['HTTP_USER_AGENT'])?"2":"4");
$dcol = (ereg("Firefox",$_SERVER['HTTP_USER_AGENT'])?"14":"18");

print '<b><small>単語または文章</small></b><br>';
print '<textarea rows="'.$drow.'" cols="'.$dcol.'" name="SENTENCE">';
print $sentence;
print '</textarea><br>';
print '<input type="submit" value="スペルチェック"><br>';
print '<img src="blank.gif" height="10"><br>';
print '<b><small>修正候補</small></b><br>';
print '<textarea rows="'.$drow.'" cols="'.$dcol.'" onclick="this.focus(); this.select();">';
if ($result !=""){
print $result;
} elseif ($sentence !="") {
print '(文章のスペルが正しいか、修正候補がありません。)';
}
print '</textarea><br>';

?>
■■■■■■■■■■■■■■■





PHP関連記事(リンク一覧): さくらレンタルサーバーのアクセス履歴をPHPで表示 / PHPで画像のアップロード(さくらレンタルサーバーのPHPでImageMagick) / PHP REVERSI(オセロもどき)の続き / PHP REVERSI(リバーシ) - オセロもどきゲームの公開 / PHP版-簡易アクセスブロック(IPアドレス、ホスト名、OS、ブラウザ名で制御) / ...(記事連続表示)

PHP×WebサービスAPIコネクションズ
PHP×WebサービスAPIコネクションズをAmazon.co.jpでチェック