生年月日のフォームコード例
年 のフォーム
<select>
<option value="">--</option>
<?php foreach(range(1920,2016) as $year): ?>
<option value="<?=$year?>"><?=$year?></option>
<?php endforeach; ?>
</select>
月のフォーム
<select>
<option value="">--</option>
<?php foreach(range(1,12) as $month): ?>
<option value="<?=str_pad($month,2,0,STR_PAD_LEFT)?>"><?=$month?></option>
<?php endforeach; ?>
</select>
日のフォーム
<select>
<option value="">--</option>
<?php foreach(range(1,31) as $day): ?>
<option value="<?=str_pad($day,2,0,STR_PAD_LEFT)?>"><?=$day?></option>
<?php endforeach; ?>
</select>
解説
range
range関数は、引数の範囲での配列を作成してくれます。
日付や年の配列を生成するほか、仮想でx回回すみたいな処理とか書くときに便利だったりします。
サクッとモック作成するときに知っていると何かと便利な関数です。
str_pad
文字列を固定長で埋めてくれる関数です。わかりやすく言うと 1
を 01
とかにしてくれる関数です。
第一引数に埋めたい文字、第二引数に埋める桁数、第三引数に埋めるときに使う文字、第四引数に埋め方を指定します。
埋め方には3つあって
- STR_PAD_RIGHT : 右を埋める(デフォルト)
- STR_PAD_LEFT : 左を埋める
- STR_PAD_BOTH : 両端埋める
が選べます。