time() wandeln in date("Y-m-d H:i:s")

Loddar1

Erfahrenes Mitglied
Ich habe schon einige daten von time() zu datetime() gewandelt,
da ging es aber nur um plus oder minus
jetzt brauche ich geteilt:
PHP:
$sql_row["akseit"] = 1743276502;
$Temp_anz_tag = (time() - $row["akseit"])/(24*60*60);
funktioniert!

$sql_row["akseit"] = '2025-03-29 11:35:51';
$Temp_anz_tag = (date("Y-m-d H:i:s") - $row["akseit"])/('1 day');
Fehlermeldung:
Warning: A non-numeric value encountered
Frage wie setze ich das /(24*60*60) richtig um?
Dankeschön für einen Denkanstoss im vorraus

Loddar1
 
es sind 2 datenbanken


Was heisst P2D

Also 2 ist klar
D ist auch klar (Tage)
wofür steht das P ?

PHP:
$datetime = new DateTime('2025-03-30');
$interval = 'P2D';
$datetime->sub(new DateInterval($interval));
echo $datetime->format('Y-m-d');
 
Zuletzt bearbeitet:
Das "P" in P2D steht für "Period" und ist Teil des ISO 8601-Datumsintervalls, das von DateInterval in PHP verwendet wird.
 
Ich habe mich ja auch erst mal nur auf die Fehlermeldung bezogen. Ein Datum teilen geht natürlich nicht, das geht nur mit Timestamps. Wobei sich mir sowieso die Frage stellt, warum man Timestamps in der Datenbank speichert.
 
Also mit php machen zum Lernen und verstehen
wie geht das mit Timestamps?
zum Beispiel
PHP:
$sql_row["akseit"] = 1743276502;
$Temp_anz_tag = (time() - $row["akseit"])/(24*60*60);
kannst Du mir da was geeignetes mitteilen?
 
Das ist vom Prinzip her richtig, aber wenn du mal das Error-Reporting von PHP hochdrehen würdest (boah, wie oft ich das schon gepostet habe), würde PHP dir die eine Zeile auch um die Ohren hauen.

$sql_row["akseit"] = 1743276502;
$Temp_anz_tag = (time() - $row["akseit"])/(24*60*60);
 

Neue Beiträge

Zurück