PHP Datum von yyyy-mm-dd zu Monat yy (Januar 14 etc.)

Cool Master

Fleet Admiral
Registriert
Dez. 2005
Beiträge
39.818
Moin,

ich habe ein kleines Problem mit der Datums Umwandlung:

Ich habe folgende Abfrage:

Code:
$datum = mysql_query("SELECT * FROM `allinone` ORDER BY `allinone`.`datum` ASC");

Dies geht in folgenden Array:

Code:
<?php echo "labels : ["; while($datumsausgabe = mysql_fetch_array($datum)){echo "\"";echo $datumsausgabe["datum"];echo "\"";echo ", ";} echo "],"; ?>

Nun frage ich mich aber wie bekomme ich aus dem Format yyyy-mm-dd ein deutsches Datum. Der Tag ist nicht wirklich nötig es wird einfach nur Monat und Jahr (ob 2 oder 4 Stellen ist egal) benötigt. Ich habe zwar einige Beispiele gefunden allerdings nie für eine Array.

Wäre nett wenn ihr mich da in die richtige Richtung stupsen könnt.
 
Was ist den ein Array? Einfach gesprochen eine Liste von Objekten gleichen Typs ... was sich also auf ein String anwenden lässt, lässt sich auch auf einen String anwenden der in einem Array steckt ... hoffe das reicht als Schubs ;)
 
Die nimmst einfach den Wert aus $datumsausgabe["datum"] und wirfst den in die passende Konvertierungsfunktion. Alternativ bietet auch mySQL selbst solche Datumskonvertierungen an (siehe online Handbuch). Dann hast du das Datum im Ergebnissatz deiner Anfrage direkt in der richtigen Form.

Vielleicht macht es aber auch Sinn, wenn du dich erstmal grundlegend mit Programmierung, Datenstrukturen, etc auseinandersetzt, bevor du dich auf Datenbanken stürzt ;)
 
"yyyy-mm-dd" ist ISO 8601, das wird von jeder Sprache unterstützt. Versuchs mal mit: date('m. Y', strtotime("MEIN ISO DATUM"));
 
Ich steh immer noch aufm Schlauch, will einfach nicht so wie ich will. Aber ok werde ich mir die Tage noch mal anschauen. Ist aktuell auch nicht soo wichtig.
 
In der PHP Doku steht es doch genau so:


PHP:
<?php
echo date("YW", strtotime("2011-01-07")); // gives 201101
echo date("YW", strtotime("2011-12-31")); // gives 201152
echo date("YW", strtotime("2011-01-01")); // gives 201152 too
?>
 
Hi,

eventuell gleich richtig in der Datenbank abfragen, so dass du es nachher nicht konvertieren musst? "set lc_time_names = 'de_de'; SELECT DATE_FORMAT(datum, '%M %y') FROM tabelle" macht z.B. dein gewünschtes Format.

Geht natürlich nur, wenn du das SQL anpassen kannst / darfst.

VG,
Mad
 
Oh gott ich werde rot... Heute ist nicht mein Tag, na ja noch gut 4 Stunden und der Tag ist vorbei.

@benneque

Das klappt natürlich super! Man muss es halt in eine Variable stecken innerhalb der while schleife...

@Madman1209

Hat auch geklappt im PHPMyAdmin aber ich bevorzuge das alles in PHP zu machen.
 
Zurück
Oben