文書更新:2019年06月25日(火) 午後11時54分02秒

Home > その他 > 郵便番号 > php の利用 > google 日本語入力 API を使用( 170 )

google日本語入力APIを使用して作ってみました。簡単には、住所を都道府県とそれ以外に分割することができない欠点がある。また、よみがなを読み取ることができない。

郵便番号から住所を検索

郵便番号: 入力例:「123-4567」
住所:

コード

  1. php部
  2. 住所検索ボタン押下時の処理
    <?php
    if(isset($_POST["search"])){
    	if (preg_match("/^\d{3}\-\d{4}$/",$_POST["zip"])) {
    		$err="";
    	} else {
    		$err="正しくない郵便番号です。";
    	}
    	$zip_code=$_POST["zip"];
    	$query = urlencode($_POST["zip"]);
    	$data = file_get_contents("http://www.google.com/transliterate?langpair=ja-Hira|ja&text={$query}");
    	$json = json_decode($data);
    	if($json[0][0]==$query){
    		$addr=$json[0][1][0];
    	}else{
    		$addr="該当する住所が存在しません";
    	}
    }else{
    	$zip_code="";
    	$addr="";
    	$err="";
    }
    ?>

  3. Html部
  4. webページの表示
    <?php
    $ret=<<<DOE
    <form method="post" action="{$_SERVER["REQUEST_URI"]}">
    	<table>
    		<tr><th>郵便番号:</th><td><input type="text" name="zip" size="9" maxlength="8" value="{$zip_code}"><input type="submit" name="search" value="住所検索"> 入力例:「000-0000」{$err}</td></tr>
    		<tr><th>住所:</th><td><input type="text" name="address" size="60" value="{$addr}"></td></tr>
    	</table>
    </form>
    DOE;
    echo $ret;
    ?>