Hallo,
Auf _jeder_ der vielen Seiten, die ich zu diesem Thema bis jetzt gefunden habe, wird die
time()
Funktion benutzt. Also zB.
<?php
$timestamp=time();
$datum=date("d.m.Y - H:i",$timestamp);
echo $datum;
?>
ja, das ist sozusagen "über"-korrekt.
> Jetzt funktionierrt das aber auch \_ohne\_ `time()`{:.language-php}.
>
> ~~~php
<?php
> echo date("l");
> echo date("H:i");
> ?>
In der Beschreibung der Funktion date() heißt es:
"Returns a string formatted according to the given format string using the given integer timestamp or the current time if no timestamp is given. In other words, timestamp is optional and defaults to the value of time()."
Mit anderen Worten: Du kannst einen *beliebigen* Timestamp als zweiten Parametr mitgeben, etwa gestern mittag 12 Uhr, dann arbeitet date() damit. Du kannst den zweiten Parameter auch weglassen, dann nimmt date() die aktuelle Systemzeit an.
Was dein erstes Beispiel zeigt, ist also unnötig explizit: Erst die aktuelle Systemzeit ermitteln, und sie dann als optionalen zweiten Parameter am date() übergeben - um dasselbe zu erreichen, als wenn man ihn weglassen würde.
Bzw. wo liegt der Unterschied, ob man es mit oder ohne
time()
macht? Mir ist das nicht wirklich klar.
Der Unterschied ist, dass date() eben nicht nur eine formatierte Ausgabe des aktuellen Zeitpunkts erzeugen kann, sondern jedes beliebigen Zeitpunkts. Hast du beispielsweise die Zeit der letzten Änderung bestimmter Werte in einer DB gespeichert und willst diese Zeit wieder anzeigen, dann *musst* du date() den zweiten Parameter mitgeben.
Schönes Wochenende,
Martin
Wieso heißen die Dinger eigentlich Anrufbeantworter? Eigentlich sind es doch nur Anrufanhörer.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(