Stunden subtrahieren

Mitglied: ITgustel

ITgustel (Level 1) - Jetzt verbinden

29.11.2020, aktualisiert 15:25 Uhr, 728 Aufrufe, 1 Kommentar

Hallo Leute,

ich würde mir gerne in meine private Webcam einblenden lassen, um wie viele Minunten der heutige Tag zu gestern länger/kürzer ist.

Dazu habe ich folgendes geschrieben, damit wird mir mit timestamp3 die heutige Tageslänge angezeigt und mit timestamp6 die gestrige.
Ich schaffe es aber nicht die Differenz in Minuten auszugebn, also -2 Minuten oder im Frühjahr mit positiven (+) Wert, z. B. +2 Minuten...

So kommt bei "echo date('H:i', $timestamp3-$timestamp6);" nämlich 00:58 raus.

<?php date_default_timezone_set("Europe/Berlin"); ?>

<?php
$timestamp1 = strtotime(date_sunrise(time(), SUNFUNCS_RET_STRING, 47.5, 11.1, 90.5, 1));
$timestamp2 = strtotime(date_sunset(time(), SUNFUNCS_RET_STRING, 47.5, 11.1, 90.5, 1));
$timestamp3 = (($timestamp2 - $timestamp1)-3600);

$timestamp4 = strtotime(date_sunrise(strtotime("-1 day"), SUNFUNCS_RET_STRING, 47.5, 11.1, 90.5, 1));
$timestamp5 = strtotime(date_sunset(strtotime("-1 day"), SUNFUNCS_RET_STRING, 47.5, 11.1, 90.5, 1));
$timestamp6 = (($timestamp5 - $timestamp4)-3600);

echo date('H:i', $timestamp3);
echo date('H:i', $timestamp6);
echo date('H:i', $timestamp3-$timestamp6);
?>

Im Internet habe ich noch sowas gesehen:

$diff = $timestamp3->diff($timestamp6);
echo $diff->format('%r%H:%I');

Aber das funktioniert gar nicht.
Hat jemand ein Tipp für mich?

Danke
Mitglied: ITgustel
29.11.2020 um 20:07 Uhr
Konnte die Lösung selbst finden!
Für alle Interessierten:

<?php
$timestamp1 = strtotime(date_sunrise(time(), SUNFUNCS_RET_STRING, 47.5, 11.1, 90.5, 1));
$timestamp2 = strtotime(date_sunset(time(), SUNFUNCS_RET_STRING, 47.5, 11.1, 90.5, 1));
$timestamp3 = (($timestamp2 - $timestamp1)-3600);

$timestamp4 = strtotime(date_sunrise(strtotime("-1 day"), SUNFUNCS_RET_STRING, 47.5, 11.1, 90.5, 1));
$timestamp5 = strtotime(date_sunset(strtotime("-1 day"), SUNFUNCS_RET_STRING, 47.5, 11.1, 90.5, 1));
$timestamp6 = (($timestamp5 - $timestamp4)-3600);

echo sprintf("%+d",(($timestamp3-$timestamp6)/60));
?>

Die Lösung war:
echo sprintf("%+d",(($timestamp3-$timestamp6)/60));

Mit sprintf("%+d",()); wird ein positives Vorzeichen mit ausgegeben.
Sonst würde nur ein negatives Vorzeichen angezeigt, so auch ein positives (+).

Grüße
Bitte warten ..
Heiß diskutierte Inhalte
Internet
Kein Internet nach Windows 2019 Server Installation
gelöst ZygmundVor 1 TagFrageInternet25 Kommentare

Computer : HP ProLiant DL580 Gen7 , 4x CPU , 16 GB ECC Ram, 1 TB SAS Installation von - Windows 8 Server - ...

Windows Server
GPO verschieben von Benutzern
gelöst AnGi1964Vor 1 TagFrageWindows Server10 Kommentare

Hallo in die Runde! Ich habe als Neuling hier gleich 2 Fragen und hoffe, das mir geholfen werden kann. 1. Ich habe bei einem ...

Netzwerke
Windows 10 - Netzwerk Speedlimit?
alwayshungryVor 15 StundenFrageNetzwerke13 Kommentare

Hallo, ich bin noch neu hier und hoffe, dass ihr mir helfen könnt. Gibt es eine Limitierung für Windows 10 bei der Netzwerkgeschwindigkeit? Leider ...

Firewall
Kennt jemand Forcepoint Firewalls oder setzt diese sogar ein?
ZeroTrustVor 1 TagFrageFirewall2 Kommentare

Ich wäre interessiert an User Meinungen über diese Firewall Lösungen. Kenne ich absolut nicht und habe auch noch nie davon gehört, geschweige jemals damit ...

Outlook & Mail
Outlook 2019 stürzt bei Erhalt von Besprechungsanfrage ab
gelöst PhiltaerVor 1 TagFrageOutlook & Mail17 Kommentare

Hallo, ich habe ein ganz merkwürdiges Problem. Outlook 2019 stürzt beim Erhalt von Emails die Besprechungsanfragen enthält ab. Das Programm friert ein mit "Reagiert ...

Windows Server
Server 2019 - VM (DC) hängt sporadisch
zer0g2224Vor 1 TagFrageWindows Server13 Kommentare

Hallo liebe Kolleginnen und Kollegen, ich habe mal wieder eine Frage zu einem Problem: Eine VM (DC) bleibt im Betrieb sporadisch "hängen". Das äußert ...

Groupware
Anfängerfrage zu Teams, wie kann ich mit einer externen Person chatten?
StefanKittelVor 19 StundenFrageGroupware6 Kommentare

Hallo, ich habe mal eine Anfängerfrage zur MS Teams. Ich habe einen M365 Business Basic Account mit meiner Domäne. Ich habe einen User mit ...

Festplatten, SSD, Raid
WD RED PRO Festplatte als "Recertified" und "white" gelabelt
gelöst Torsten2010Vor 18 StundenFrageFestplatten, SSD, Raid5 Kommentare

Hallo, ich wollte heute die Firmen QNAP Nas mit neuen Festplatten bestücken. Beim Auspacken fiel mir sofort auf, das die Festplatten weiß gelabelt sind ...