Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour à tous,
Est ce que quelqu'un pourrai m'éclairer sur la meilleur stratégie pour afficher des dates avec Zend_Date à partir du format DATETIME ou DATE
si je fait ça :
$date = new Zend_Date();
$date->set('1971-08-11 08:30:00', Zend_Date::ISO_8601); 
echo $date->get('d/m/Y');Ca ne marche pas. Normale DATETIME n'est pas de l'ISO.
Avec 
$date = new Zend_Date();
$date->set('1971-08-11 08:30:00', 'Y-m-d H:i:s'); 
echo $date->get('d/m/Y');J'obtiens une exception 'Zend_Date_Exception' with message 'Unable to parse the date format string 'Y-m-d H:i:s' at letter 'i'' 
Bug ?
Hors ligne
Autre chose si je fais :
$date = new Zend_Date();
$date->set('1971-08-11T08:30:00+01:00', Zend_Date::ISO_8601); 
$date->get('d/m/Y'); 
J'obtiens : 11/00/1971
Là je ne comprends plus rien... Basta, j'arrête enough for today !  
Hors ligne
En fait en lisant la doc posément Y-m-d H:i:s correspond au format PHP
Avec Zend_Date il faut utiliser YYYY-MM-dd HH:mm:ss
$date->set('1971-08-11 08:30:00', 'YYYY-MM-dd HH:mm:ss');
ou alors signaler que l'on veut utiliser le format php :
Zend_Date::setOptions(array('format_type' => 'php'));
Idem avec le format ISO
$date = new Zend_Date();
$date->set('1971-08-11T08:30:00+01:00', Zend_Date::ISO_8601);
$date->get('d/m/Y'); // Format incorrect
$date->get('DD/MM/YYYY'); // Format correctDernière modification par 2mx (13-12-2007 09:45:09)
Hors ligne
Nouveau test avec un format MySql DATETIME déclaré comme de l'iso
$date->set('1971-08-11 08:30:00', Zend_Date::ISO_8601);  
$date->get('dd/MM/YYYY');
$date->get(Zend_Date::DATE_FULL);Et là ça semble fonctionner :
dd/MM/YYYY
11/08/1971
Zend_Date::DATE_FULL
mercredi 11 août 1971
idem si je ne précise pas le format :
$date->set('1971-08-11 08:30:00');
dd/MM/YYYY
11/08/1971
Zend_Date::DATE_FULL
mercredi 11 août 1971
Hors ligne
Pages: 1