配列の年月日と時刻を文字列に変換する

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() を組み合わせることになるのかな。