Witam

W obiekcie dziedziczącym po Doctrine_Record mapującym tabelkę na obiekt mam pole zdefiniowane w ten sposób:

  1. $this->hasColumn('display_to', 'date', null, array(
  2. 'type' => 'date',
  3. 'fixed' => false,
  4. 'unsigned' => false,
  5. 'primary' => false,
  6. 'default' => '2010-12-20',
  7. 'notnull' => true,
  8. 'autoincrement' => false,
  9. ));

i teraz chciałbym do niego przypisać jakąś wartość ($oForm->getValue('display_to'))) tylko wcześniej zmienić format zapisu daty

  1. var_dump($oHotel->display_to);
  2. var_dump( date('Y-m-d', strtotime($oForm->getValue('display_to'))) );
  3. $oHotel->display_to = date('Y-m-d', strtotime($oForm- >getValue('display_to')));
  4. var_dump($oHotel->display_to);


niestety wynik wykonania powyższego kodu zaskoczył mnie lekko:

Cytat
string '11-12-2014' (length=10) //poprzednia wartość pola display_to
string '2014-12-11' (length=10) //nowa wartość którą chcę przypisać
string '11-12-2014' (length=10) //wartość po przypisaniu - powinno być $oHotel->display_to = '2014-12-11'


żeby było śmieszniej to poniższy kod

  1. var_dump($oHotel->display_to);
  2. var_dump( date('Y-m-d', strtotime($oForm->getValue('display_to'))) );
  3. $oHotel->display_to = '2020-10-08'; //ręczne przypisanie czegokowiek
  4. $oHotel->display_to = date('Y-m-d', strtotime($oForm->getValue('display_to')));
  5. var_dump($oHotel->display_to);


działa jak należy:

Cytat
string '11-12-2014' (length=10) //wartość przed
string '2014-12-11' (length=10) //przypisywana wartość
string '2014-12-11' (length=10) //wartość po


Próbowałem rozgryźć to debugerem - nie udało mi się, googlowałem też nic. O jakiej cudownej właściwości PHP lub Doctrine mogłem zapomniećquestionmark.gif