配列の年月日と時刻を文字列に変換する
CakePHP では、フォームから渡された日付データは配列になっている。このままでは、データベースでは扱えない。
そのため Model::deconstruct() という関数(メソッド)がある。
たとえば、
<?php array(3) { ["year"]=> string(4) "1981" ["month"]=> string(2) "04" ["day"]=> string(2) "14" }
を文字列に変換すると、"1981-04-14 00:00:00" になる。
時刻がつくのは、試したデータベースの項目が timestamp 型のためだろう。
以下のように、項目名とデータを渡して変換する。
<?php $birthday = $this->User->deconstruct('birthday', $ymd);
逆に配列に変換する関数は用意されていない。
strtotime() と mktime() を組み合わせることになるのかな。