Ist es möglich, Text zwischen Datum und Uhrzeit in PHP hinzuzufügen?
<?php
echo date();
?>
Dies wird erstellt (07-06-2014 00:00)
Aber ich will (07.06.2014 um 00:00 Uhr).
Ist es möglich, Text zwischen Datum und Uhrzeit in PHP hinzuzufügen?
<?php
echo date();
?>
Dies wird erstellt (07-06-2014 00:00)
Aber ich will (07.06.2014 um 00:00 Uhr).
Ausnahme
Abgeleitet von Ihrem Beispiel, das Sie etwas spät bereitgestellt haben
echo date('d-m-Y \a\t H:i:s') . ' hours';
Achten Sie darauf, die exakt angegebene Syntax zu verwenden! Verwenden von doppelten Anführungszeichen "
statt einzelne '
wird dazu führen, dass Sie eine Registerkarte für erhalten \t
müssten Sie dann verwenden \\a\\t
für die richtige Syntax wie im folgenden Beispiel:
echo date("d-m-Y \\a\\t H:i:s") . ' hours';
Dies liegt an der Funktionsweise von PHP-Zitaten und hat nichts mit Datumsformatierung zu tun, Dinge in '
entkomme nicht, während die drin sind "
tun, also wenn Sie verwenden "
Achten Sie darauf, doppelte Backslashes zu verwenden \\
.
Wenn es sich um ein Datetime-Objekt handelt
echo $datetime->format('d-m-Y \a\t H:i:s') . ' hours';
wenn Sie es bereits als Zeichenfolge haben
echo str_replace(' ', ' at ', $datetime) . ' hours';
\a\t
kehrt zurück a
Für mich. Setzen Sie einen anderen \a\\t
funktioniert aber.
– rybo111
30. Mai 2015 um 16:52 Uhr
Dies liegt daran, während t
ist ein date
String-Element (Anzahl der Tage in einem bestimmten Monat), es zu maskieren als \t
gibt eine Registerkarte aus. Dies erfordert daher eine zusätzliche Flucht!
– Ben
23. März 2017 um 15:49 Uhr
wenn ich strftime benutze, wie kann ich das machen??
– Dariel Ramos Díaz de Villegas
31. Mai 2018 um 12:52 Uhr
@rybo111 das liegt daran, dass du verwendet hast "
anstatt '
zum Zitieren die Erklärung zum Beispiel hinzugefügt.
– Ausnahme
15. Mai 2019 um 7:41 Uhr
Ja, du kannst.
$date=date("m-d-Y");
$time=date("H:i:s");
$display=$date.'at'.$time;
Vielleicht ändern Sie dies zu $display=$date.' at '.$time;
Beachten Sie die Leerzeichen um at
.
– Denis Priebe
7. Mai 2015 um 16:36 Uhr
\a\t hat stattdessen bei mir nicht funktioniert \\a\\t
funktioniert sehr gut
date("d-m-Y \\a\\t H:i");
Das liegt daran, dass Sie doppelte Anführungszeichen verwenden. Backslashes werden in einfachen und doppelten Anführungszeichen unterschiedlich interpretiert. Innerhalb von einfachen Anführungszeichen bleiben die Backslashes Backslashes; innen doppelt, \t
wird zu einem Tabulatorzeichen, das date
versteht nicht.
– Tom Zych
16. Juli 2018 um 22:02 Uhr
Seltsamerweise wollte ich setzen
date("l the jS F Y");
B. Montag, der 9. Januar 2017 zu lesen, aber stattdessen habe ich “Montag 3106UTC, 9. Januar 2017” erhalten. Ich habe die obige Antwort von xception gelesen und in geändert date("l \t\h\e jS F Y")
was mir “Montag h 9. Januar 2017” gab, also habe ich den Kommentar von rybo111 gelesen und ihn geändert in date("l \t\\h\\e jS F Y")
und es hat immer noch nicht funktioniert, da ich jetzt “Montag, den 9. Januar 2017” bekam.
Nach einigem Kopfkratzen habe ich herausgefunden, dass, wenn Buchstaben im Wort auch Teil der Funktion date() sind, zum Beispiel t = Anzahl der Tage im angegebenen Monat, diese doppelt maskiert werden müssen, sonst reicht ein einfaches Escape . Daher muss “at” codiert werden \a\\t
und “das” als \\t\\h\\e
.
Geben Sie bitte zuerst das angegebene Datum im ISO-Format ein, damit strtotime()
kann es lesen und dann verwenden date()
Funktion, um das Datum entsprechend zu formatieren.
date('/*DATE FORMAT YOU WANTED*/', strtotime('/*ISO FORMATTED DATE*/'));
Was genau willst du erreichen?
– Peon
12. Oktober 2012 um 11:27 Uhr