[CakePHP2]FormHelper dateTimeのオプション設定をやってみた

CakePHP2で日時入力のフィールドを作ってくれるヘルパーのdateTimeですが、
デフォルトの挙動は残念ながら日本人が苦手なタイプです。
[日]-[英語月名]-[年][時(12時間表記)]:[分][am/pm]

ということで、カスタマイズの例

YMDの順、24時間表記、月の名前は数字、デフォルトは現在日付、分の間隔は15分、最小年は2012年から(最大も指定可能)
⇒[年(2012開始)]-[月(数字)]-[日][時(24時間表記)]:[分(15分刻み)]

echo $this->Form->dateTime('filename1', 'YMD', '24', array('monthNames' => false, 'empty ' => false, 'interval' => 15, 'minYear' => 2012));

整形が便利な input を使用する場合は、オプションを並列に表記する。

echo $this->Form->input('filename2', array('type' => 'datetime', 'label' => '日時', 'dateFormat' => 'YMD', 'timeFormat' => '24', 'monthNames' => false, 'empty' => false, 'interval' => 15, 'minYear' => 2012));
// dateTime でなく datetime なのがポイント

詳しくは、cake/lib/Cake/View/Helper/FormHelper.php を読んでいただければと。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です