Home > MySQL, Zend Framework, php > Zend_Date in ein MySQL kompatibles Datum konvertieren

Zend_Date in ein MySQL kompatibles Datum konvertieren

July 14th, 2009

Zend_Date hat für alle erdenklichen Ausgabeformate eine Lösung. Nur für den Einsatz als MySQL Datum nicht. das muss man noch ‘händisch’ einrichten.

Die Lösung ist natürlich sehr einfach, aber da ich das Zend Framework nur gelegentlich benutze musste ich trotzdem danach googlen. Fündig wurde ich hier: http://www.eatmybusiness.com/food/2009/01/31/how-to-get-zend-date-in-sql-timestamp-format-eg-mysql-yyyy-mm-dd-hhmmss/90/

Hier die vereinfachte Zusammenfassung:

$date = new Zend_Date();
$sql_date_pattern = 'yyyy-MM-dd HH:mm:ss';
echo $date->get($sql_date_pattern);

Achja, dann gibt es auch noch eine kleine Falle wenn man mit ein Zend_Date Object, mit einem Datum aus einer MySQL DB initialisieren will. Wer das Datum nicht vorher mit strtotime() behandelt kann sich einen gut versteckten Fehler einfangen.:

$day = "2009-10-11";
 
// Falsch
$date = new Zend_Date($day);
echo $week = $date->get(Zend_Date::WEEK) . "\n";
#-> Nov 10, 2009 12:00:00 AM

// Richtig
$date = new Zend_Date(strtotime($day));
echo $week = $date->get(Zend_Date::WEEK) . "\n";
#-> Oct 11, 2009 12:00:00 AM

Kurioserweise tritt dieses Phänomen bei mir nur dann auf, wenn ich das Script via CLI auf der Shell aufrufe.

In diesem Zusammenhang:

  1. Ein Array mit fortlaufenden Tage eines Intervals mit Zend_Date Lang ist’s her dass ich eine Tabelle bauen musste, deren...
  2. Ein MySQL Datum in ein Javascript Datum konvertieren Eine Aufgabe die nicht allzu häufig ansteht. Zumindest ich brauche...
  3. Das Datum setzen mit dem jQuery Datepicker und setDate Das klingt zunächst einmal sehr einfach, aber ich musste doch...

MySQL, Zend Framework, php ,

  1. No comments yet.
  1. No trackbacks yet.