QUOIT Blog

個人的によく使うデータやスニペットのメモ

この記事は5年以上前の記事です。情報が古い場合がありますのでお気を付け下さい。

自分用メモです。
毎回あれどっから取ってくるんだっけな…とか思ってるので。
思いついたら随時更新します。自分のために。

一応説明する体で記事公開します。誰かのために。

PHP

都道府県を配列にしたもの

$pref = array("北海道","青森県","岩手県","宮城県","秋田県","山形県","福島県","茨城県","栃木県","群馬県","埼玉県","千葉県","東京都","神奈川県","山梨県","新潟県","富山県","石川県","福井県","長野県","岐阜県","静岡県","愛知県","三重県","滋賀県","京都府","大阪府","兵庫県","奈良県","和歌山県","鳥取県","島根県","岡山県","広島県","山口県","徳島県","香川県","愛媛県","高知県","福岡県","佐賀県","長崎県","熊本県","大分県","宮崎県","鹿児島県","沖縄県");

地方別版

$pref = array(
"北海道"=>array("北海道"),
"東北"=>array("青森県","岩手県","宮城県","秋田県","山形県","福島県"),
"関東"=>array("茨城県","栃木県","群馬県","埼玉県","千葉県","東京都","神奈川県"),
"中部"=>array("山梨県","新潟県","富山県","石川県","福井県","長野県","岐阜県","静岡県","愛知県"),
"近畿"=>array("三重県","滋賀県","京都府","大阪府","兵庫県","奈良県","和歌山県"),
"中国"=>array("鳥取県","島根県","岡山県","広島県","山口県"),
"四国"=>array("徳島県","香川県","愛媛県","高知県"),
"九州"=>array("福岡県","佐賀県","長崎県","熊本県","大分県","宮崎県","鹿児島県","沖縄県")
);

※これはスニペットとは言わないのか?w

PC / スマートフォン / ガラケー切り分け処理

if(preg_match("/(Android|iPhone)/",$_SERVER['HTTP_USER_AGENT'])){
	$type="smartphone";
}elseif(preg_match("/(DoCoMo|KDDI|UP\.Browser|J\-PHONE|Vodafone|SoftBank)/",$_SERVER['HTTP_USER_AGENT'])){
	$type="mobile";
}else{
	$type="pc";
}

※BlackBerry、Windows Phone、Windows CE、emobile、WILLCOMは上に入ってない。
※↑の文字列はユーザエージェントに含まれてるので、どこかに足せばいい。ビーモバイルはよくわかんない。

パスワード生成プログラム

下記のブログで完成してる。

PHP: パスワード生成関数を1行で書いてみた | Suinasia

基本的にこれで事足りる。
なのだけど、僕は一見して読みづらい文字を外してるので、下記のコードになる。

function make_password($chars = 8){
  return substr(str_shuffle('23456789abcdefgjmpqrstuvwxyzABCDEFGJMPQRSTUVWXYZ'), 0, $chars);
}

このへんはお好みだね。。

ハッシュ生成

$token = md5(uniqid(rand(), true));

僕はだいたいこれで生成してる。
↓参考

より高速に、推測困難な一意なIDを生成する方法 – [サンプルコード/PHP] ぺんたん info

画像サイズ変更

# サイズ取得
$fileinfo = getimagesize($old_img_path);
# 長辺を取得
$rate = $fileinfo[0]/$fileinfo[1];
if (@($max_width/$max_height) > $rate) {
  $max_width = $max_height*$rate;
} else {
  $max_height = $max_width/$rate;
}
@shell_exec("convert {$old_img_path} -resize {$max_width}x{$max_height} {$new_img_path}");

max_heightとmax_widthを決めておけば長い辺が調整されるように、計算を入れてある。
ImageMagick必須なので、サーバ環境に注意。
↓参考

ImageMagick vs GD – PHPでサムネイルを作る – INOLOG Ver.2

データ

郵便番号一覧データ
 →ZIPで置いてある。
 →いくつかAPIもあるけど、僕は毎回ここから取ってきてる。

市外局番一覧データ
 →なんでWordで作ったのが謎。
 →なので、エクセルにしといた。(2012/04/03時点のデータ)内容に責任は取れませんが、ご自由にどうぞ。
 →エクセルダウンロード

Comments are closed.