勉強したことのメモ

webプログラマが勉強したことのメモ。

CSVファイルを使って郵便番号から住所を抽出する

      2014/05/23

■ソース

<?
error_reporting(E_ALL & ~E_NOTICE);

if (is_numeric($_POST['postcode'])) {
$csv_data         = array();
$csv_file             = 'KEN_ALL.CSV';
$fp                 = fopen($csv_file, "r");
while *1 !== FALSE) {
if (array_search($_POST['postcode'], $data)) {
$csv_data[] = $data;
}
}
fclose($fp);
$address = $csv_data[0][6] . $csv_data[0][7];
$address .= ($csv_data[0][8] == '以下に掲載がない場合') ? '' : $csv_data[0][8];
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transtional//EN" "http://www.w3c.org/TR/html4/loose.dtd">
<meta http-equiv="content-type" content="text/html"/>
<meta cherset = "shift-jis">
<html lang="ja">
<head>
<title>郵便番号</title>
</head>
<body>
<h1>郵便番号</h1>
<form action="" method="post">
<input type="text" name="postcode">
<input type="submit" value="submit">
</form>
<br />
<? if (is_array($csv_data)) : ?>
住所 ⇒ <?=$address;?>
<? endif; ?>
</body>
</html>

■その他
fgetcsv
http://pg-memo.sakura.ne.jp/php_file_002_004.html
デリミタ文字⇒区切り文字

検索にヒットしたもののみを配列に格納してる。
検索云々の分岐をなくせば全ての結果が配列に格納される。

 

■郵便局のCSV
http://www.post.japanpost.jp/zipcode/dl/kogaki.html

*1:$data = fgetcsv($fp, 0, ","

 - PHP

  関連記事

GoogleスプレッドシートとPHPの連携

GoogleスプレッドシートとPHPプログラムを連携させたいという案件をたまに見 ...

imgタグとPHPでグラフ作成

プラグインやライブラリを使わずにグラフを作る 機会があったのでメモ。 ■サンプル ...

セレクトメニューとテキストエリアの連動

やりたかった事は、 ・セレクトメニューで何れかを選択すると連動したテキストエリア ...

PHPで指定月の月末日を取得

今月の、だったらdate('t')でいくけど指定月の場合は どうしたらいいのか分 ...

PHPでis_fileとfile_existsについて

ファイルの存在チェックを行う際に、file_exists関数を 使用していたが、 ...

CodeigniterでCSSやJSファイルを読み込む

CodeigniterでCSSやJSファイルを読み込みたかった。また、それをヘッ ...

ページング処理用PHP

/* @内容 ページング処理のfunction @使い方 //******親ペー ...

短縮URL(リダイレクトページ)

<? /* 管理画面とあわせて使う。 short_url直下にこのphpを ...

cronの設定方法

cronを設定してみたので方法をメモ。 まずcronで動かすPHPを作成。 ■c ...

ランダム表示のページング

MySQLからデータを持ってくる際に、 ランダムな表示を行ってほしいと言われた。 ...