noshi’s diary

ゲームの事、映画やドラマ、思いついた事、プログラミングの事、雑記的なことを書いています

yyyy/mm/dd形式の日付を利用する

リストから送信される日付「yyyy/mm/dd」のような形式の日付をフォームから受け取ってタイムスタンプに変換したり、「年」「月」「日」の個々の要素を取り出したりしてみた。

<?php
if(isset($_POST["ymd"])){
//データを受け取り
$ymd = $_POST["ymd"];?>
<p>選択された日付:<?php echo $ymd;?></p>
<?php
//タイムスタンプに変換する
$ts = strtotime($ymd);?>
<p>タイムスタンプ表示:<?php echo $ts;?></p>
<p>タイムスタンプの日付:<?php echo date("Y/m/d", $ts);?></p>
<p>「yyyy/mm/dd」を「年/月/日」に分割:
<?php list($yyyy,$mm,$dd) = explode("/",$ymd);
echo $ymd;?>
</p>
<p><?php echo $yyyy;?>年</p>
<p><?php echo $mm;?>月</p>
<p><?php echo $dd;?>日</p>
<?php }?>
<form method="post" action="<?php echo $_SERVER["PHP_SELF"]?>">
<table>
<tr>
<td><select name="ymd">
<?php
//日付をセット
for ($i = 1; $i<=40; $i++){
$ts = mktime(0,0,0,1,$i,2012);
echo "<option>" .date("Y/m/d", $ts);
}?>
</select>
</td>
<td><input type="submit" value="送信" name="dt2ts" /></td>
</tr>
</table>
</form>

dt2ts.gif