[PHP] Date- und Stringformatierung

Antoniker

Lt. Junior Grade
Registriert
Nov. 2006
Beiträge
296
Hi Leute,
ich haette eine wichtige Frage... eigentlich zwei :D
Es geht jeweils um Formatierung, wie ja schon der Titel beschreibt ;)

Ich programmiere fuer eine Freundin von mir eine Homepage mit der sie ueber einen Admin-Bereich(auf MySQL-Basis versteht sich) Galerien hinzufuegen/bearbeiten/loeschen kann.
Jedes mal wenn eine Galerie erstellt wird, soll auch das Datum eingespeichert werden, dazu habe ich in MySQL ein Attribut namens "make_date" als Date-Variable. Doch er speichert mir das immer unter zB 2007-04-15, aber ich haette gerne das Format 15.04.2007!

Kurz: Wie formatiere ich eine Variable Date auf das Mitteleuropaeischen Datumsformat?

und meine zweite Frage lautet:
Wie kann ich einen String (mit zB ueber 500 Zeichen) so formatieren das er nur die ersten 50 Zeichen ausgibt?

mfg Michael
 
Hallo Antoniker,

dein erstes problem kannst du lösen in dem du dir eine klein Funktion schreibst:
PHP:
function newDate($Date) {
$newDate = "";
$newDate .= substring($Date, 8, 2).".";
$newDate .= substring($Date, 5, 2).".";
$newDate .= substring($Date, 0, 4);
return $newDate;
}
Keine Garantie auf Richtigkeit, so sollte es aber gehen.

und deine Zweites problem kannst du auch mit Substring lösen...

MFG

tewes
 
Zuletzt bearbeitet:
ok, ich nehms zurueck, da klappt etwas doch nicht :(

wenn ich date("d.m.y", $row['make_date']) reinschreibe, dann kommt nur das raus:
01.01.70 (also im grunde der minimalste wert)

woran liegt das?
 
in der Datenbank steht das Datum so: 2007-04-15
und nicht anders...
 
PHP:
// zu Fuß
echo strftime('%d.%m.%Y', strToTime('2007-04-13'));

// auf allen Vieren
echo date('d.m.Y', strToTime('2007-04-13'));

// motorisiert
setLocale(LC_TIME, 'de', 'de_DE', 'de_DE@UTF8', 'ge');
echo strftime('%x', strToTime('2007-04-13'));

greetings, Keita
 
@Keita:
Danke, danke und nochmals Danke :)

es funtkioniert :lol:
 
Zurück
Oben