Hallo Raketenwilli,
der Typo bei der URL ist gefixt. Das darfst Du übrigens auch selbst; deinen alten User gibt's noch, auch wenn der behauptet, verlassen zu sein 😉
Der mehrfache Aufruf von date(), das notlos wirkende Zwischenspeichern in Variablen und die sodann nicht perfekte Ausgabe (je nach Ansicht oder Umständen fehlt da jeweils ein htmlspecialchars()) ließen sich vermeiden:
htmlspecialchars() brauch ich nur bei Daten zweifelhafter Herkunft, oder bei Daten, bei denen ich mit speziellen HTML Zeichen rechnen muss (< > &). Die Ausgabe von date() sollte beide Kriterien nicht erfüllen.
$today = date('d.m.Y');
$now = date('H:i:s');
ist dagegen defekt, da hast Du recht. Nicht, was die Variablen angeht. Es ist für Anfänger vorteilhaft, finde ich, Daten in Variablen zwischenzuparken, so dass der Wert einen Namen hat.
Den Umstand, dass zwei verschiedene Timestamps formatiert werden, löst man entweder wie von Dir gezeigt durch einen einzigen date()-Aufruf, oder so:
$systemZeit = new DateTimeImmutable("now");
$datum = $systemZeit->format("d.m.Y");
$uhrzeit = $systemZeit->format("h:i:s");
oder ohne Klasse:
$systemZeit = time();
$datum = date("d.m.Y", $systemZeit);
$uhrzeit = date("h:i:s", $systemZeit);
natürlich immer vorausgesetzt, dass die Timezone des Servers passt.
Im Artikel habe ich jetzt deinen Vorschlag mit REQUEST_TIME eingebaut und die Zwischenvariablen nun doch entfernt. Das potenzielle Problem ist in eine Anmerkung verschoben. Sonst hängt man die Leser, die sich einfach diese Technik abschauen wollen, nur ab.
Rolf
sumpsi - posui - obstruxi