端くれプログラマの備忘録 CakePHP [CakePHP] Formヘルパーを使って日時を入力する

[CakePHP] Formヘルパーを使って日時を入力する

Formヘルパーはオプションが多いので、良く使いそうな形式のサンプルを記しておく。

デフォルト

echo $this->Form->input('created');

datetime1

日本式 (12時間表記)

echo $this->Form->input('created', array(
    'type' => 'datetime',       //タイプは日時
    'label' => 'Creation Date', //ラベルの指定
    'dateFormat' => 'YMD',      //日付を"年月日"形式にする
    'monthNames' => false,      //月は数字表記 (trueだと英語表記)
    'minYear' => date('Y')-1,   //年の選択肢の最小値を昨年に
    'maxYear' => date('Y')+1,   //年の選択肢の最大値を来年に
));

datetime2

日本式 (24時間表記)

echo $this->Form->input('tested', array(
    'type' => 'datetime',
    'label' => 'Testing Date',
    'dateFormat' => 'YMD',
    'monthNames' => false,
    'minYear' => date('Y')-1,
    'maxYear' => date('Y')+1,
    'timeFormat' => '24',       //時刻を24時間表記
    'empty' => true,            //空選択可能
    'default' => date('Y-m-d H:i', strtotime("2014-01-01 12:33")),  //初期値指定
));

datetime3