Berechnungen mit dem Datum 1 2 3

Römisches Jahr

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
// Römisches Jahr
function arab2rom($jahr) {
 
$rom_zeichen = array(1000 => "M"900 => "CM"500 => "D"400 => "CD"100 => "C"90 => "XC"50 => "L"40 => "XL"10 => "X"=> "IX"=> "V"=> "IV"=> "I");
 
$ausgabe "";
 foreach (
$rom_zeichen as $wert => $zeichen) {
  
$zahl floor($jahr $wert);
  if (
$zahl > 0) {
   
$ausgabe .= str_repeat($zeichen$zahl);
  }
  
$jahr $jahr $wert;
 }
 return 
$ausgabe;
}
?>
<?=arab2rom(2021);?>
Ausgabe für das Jahr 2021:
MMXXI

Jahreszeit

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
// Jahreszeit
function jahreszeit($t) {
 
$m date("n"$t);
 
$d date("j"$t);
 if ((
$m < 3) || (($m == 3) && ($d < 21)) || (($m == 12) && ($d >22))) {
  return 
"Winter (22.12 - 20.3)";
 }
 else if ((
$m < 6) || (($m == 6) && ($d < 21))) {
   return 
"Frühling (21.3 - 20.6)";
 }
 else if ((
$m < 9) || (($m == 9) && ($d < 23))) {
 return 
"Sommer (21.6 - 22.9)";
 }
 else {
  return 
"Herbst (23.9 - 21.12)";
 }
}
?>
<?php
echo "Jahreszeit: " . jahreszeit(mktime(0, 0, 0, 4, 19, 2021));
?>
Ausgabe:
Jahreszeit: Frühling (21.3 - 20.6)

Datum bis zum ...

1
2
3
4
5
6
<?php
// Datum bis zum ...
function counter($tag$monat$jahr) {
 return 
"Tage bis zum 31 Dezember: " . (int)((mktime(0001231$jahr) - mktime(000$monat$tag$jahr)) / 86400);
}
?>
Ausgabe für den 19.4.2021:
Tage bis zum 31 Dezember: 256

Fortschrittsbalken

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
function fortschrittsbalken($tag$monat$jahr) {
// Fortschrittsbalken

 
$txt '<div style="width: 40%; border:1px solid #7EB4EA;">';
 
$StartDatum mktime(0,0,011$jahr);
 
$EndDatum  =  mktime(0,0,01231$jahr);
 
$u mktime(0,0,0$monat$tag$jahr);
 
$Prozent floor((($u $StartDatum) / ($EndDatum $StartDatum)) * 100);
 if (
$Prozent > 100$Prozent 100;
 if (
$Prozent < $Prozent 0;
 
$txt .= '<span style="display: Table"><span style="display:Table-Cell; width: 1%; border-right: Solid 1px #7EB4EA; font-size: 0.80rem;">Jan.</span>';
 
$txt .= '<span style="display:Table-Cell; width: 98%;"><span style="display: Inline-Block; width: ' $Prozent '%; background: #DEEEFC; text-align: right; color:#4191E0">'$Prozent '% </span></span>';
 
$txt .= <span style="display:Table-Cell; width: 1%; border-left: Solid 1px #7EB4EA; font-size: 0.80rem;">Dez.</span></span>';
 return 
$txt '</div>';
}
?>
Ausgabe für den 19.4.2021:
Jan.29% Dez.

Jahrestag

1
2
3
4
5
6
<?php
// Jahrestag
function jahrestag($tag$monat$jahr) {
 return 
"Jahrestag: " date("z"mktime(000$monat$tag$jahr));
}
?>

Datum mit Wochentag.- und Monatsname

1
2
3
4
5
6
7
8
9
10
11
<?php
// Datum mit Wochentag.- und Monatsname
function datum($tag$monat$jahr) {
 
$wt getdate(mktime(000$monat$tag$jahr));
 
$tag round($tag);
 
$monat round($monat);
 
$tage = array("Sonntag""Montag""Dienstag""Mittwoch""Donnerstag""Freitag""Samstag");
 
$monate = array(1=>"Januar""Februar""März""April""Mai""Juni""Juli""August""September""Oktober""November""Dezember");
 return 
$tage[$wt["wday"]] . ", " $tag " " $monate[$monat] . " " $jahr;
}
?>
Ausgabe:
Montag, 19 April 2021

Alle Tage eines Jahres mit den Tagesnamen

1
2
3
4
5
6
7
<?php
// Alter berechnen

$geburtstag "1989-11-09";
echo 
substr(date("Ymd") -
 
vsprintf("%04u%02u%02u"sscanf($geburtstag"%u-%u-%u")), 0, -4);
?>
Ausgabe:
Freitag, 01. Januar 2016
Samstag, 02. Januar 2016
Sonntag, 03. Januar 2016
Montag, 04. Januar 2016
Dienstag, 05. Januar 2016
Mittwoch, 06. Januar 2016
Donnerstag, 07. Januar 2016
Freitag, 08. Januar 2016
Samstag, 09. Januar 2016
Sonntag, 10. Januar 2016
... u.s.w.

Differenz zwischen Monaten berechnen

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
// Differenz zwischen Monaten berechnen

// Start- und Enddatum festlegen
$start date_create('2016-01-01');
$ende date_create('2016-06-01');

// Differenz berechnen
$interval date_diff($start$ende);

// Umrechnen in Monate
$differenz $interval->format('%m');

// Anzahl Monate ausgeben
echo 'Zwischen beiden Daten liegen ' $differenz ' Monate.';
?>
Ausgabe:
Zwischen beiden Daten liegen 5 Monate.

Differenz zwischen Tagen berechnen

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
// Differenz zwischen Tagen berechnen

// Start- und Enddatum festlegen
$start date_create('2016-01-01');
$ende date_create('2016-01-12');

// Umrechnen in Tage
$interval date_diff($start$ende);
$differenz $interval->format('%a');

// Anzahl Tage ausgeben
echo 'Zwischen beiden Daten liegen ' $differenz ' Tage.';
?>
Ausgabe:
Zwischen beiden Daten liegen 11 Tage.

Montag bis Freitag der aktuellen Woche anzeigen

1
2
3
4
5
6
7
8
9
<?php 
// Montag bis Freitag der aktuellen Woche anzeigen

$date mktime(000date('m'), date('d') - (date('w')) , date('Y'));
for (
$i 0$i < 5$i++) {
 
$date strtotime("+1 day"$date);
 echo 
date('l'$date) . " - " date('d.m.Y'$date) . "<br>";
}
?>
Ausgabe:
Monday - 19.04.2021
Tuesday - 20.04.2021
Wednesday - 21.04.2021
Thursday - 22.04.2021
Friday - 23.04.2021

Datum ab einem bestimmten Tag ausgeben

1
2
3
4
5
6
7
8
<?php
// Datum ab einem bestimmten Tag ausgeben

for ($zaehler 0$zaehler < 7$zaehler++) {
 echo 
date("d.m.Y"strtotime("+" $zaehler .
 
" day"mktime(0002252011))) . "<br>";
}
?>
Ausgabe:
25.02.2011
26.02.2011
27.02.2011
28.02.2011
01.03.2011
02.03.2011
03.03.2011

Alter berechnen

1
2
3
4
5
6
7
<?php
// Alter berechnen

$geburtstag "1989-11-09";
echo 
substr(date("Ymd") -
 
vsprintf("%04u%02u%02u"sscanf($geburtstag"%u-%u-%u")), 0, -4);
?>
Ausgabe:
31

Letzte Änderung einer Datei

1
2
3
4
5
6
7
8
9
10
11
<?php
function last_update($file) {
 
// Letzte Änderung einer Datei

 // Deutsche Datumsformat setzen
 
setlocale(LC_TIME'german''de_DE@euro''de_DE''de''ge''deu_deu');

 return 
'Letzte Änderung am ' .
  
iconv("","UTF-8"strftime("%A, den %d %B %Y"filemtime$file )));
}
?>
Ausgabe:
Letzte Änderung am Sonntag, den 04 April 2021

Anzahl der Tage eines Monats

1
2
3
4
5
6
7
<?php
function anzahl_der_tage($monat$jahr) {
 
// Anzahl der Tage eines Monats

 
return date("t"mktime(000$monat1$jahr));
}
?>
Ausgabe für: 4.2021:
30

Wiederkehrende Termine anzeigen

1
2
3
4
5
6
7
8
9
10
11
<?php
// Wiederkehrende Termine anzeigen (wöchendlich)

$termine = array(135); // Von 0 für Sonntag bis 6 für Samstag
$tage 7;
for (
$i time(); $i <time()+60*60*24*$tage$i += 60*60*24) {
 if (
in_array(date("w"$i), $termine)) {
  echo 
date("d.m.Y"$i) . "<br>";
 }
}
?>
Ausgabe:
19.04.2021
21.04.2021
23.04.2021
26.04.2021

Begrüßung der Besucher

1
2
3
4
5
6
7
8
9
10
<?php
// Begrüßung der Besucher

$stund date("G");
if (
$stund >&& $stund < 6$tach "Guten Morgen Besucher zur frühen Stunde, ";
if (
$stund < 12 && $stund >6$tach "Guten Morgen Besucher, ";
if (
$stund <18 && $stund >12$tach "Guten Tag Besucher, ";
if (
$stund >19$tach "Guten Abend Besucher, ";
echo 
$tach;
?>
Ausgabe:
Guten Tag Besucher,

Begrüßung im Neon-Style

Neon Buchstaben - Generator

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<style>
/* Glühende Neon Buchstaben */

div.neon {
 font-family: "Verdana";
 font-variant: Small-Caps;
 color: rgb(255, 255, 255);
 font-size: 5.5em;
 text-align: Center;
 padding: 25px;
 border-radius: 20px;
 background: rgb(0, 96, 128);
 animation: neonGlow 1.5s infinite alternate cubic-bezier(0.455, 0.030, 0.515, 0.955);
}

@keyframes neonGlow {
 0% {
  text-shadow: 0 0 10px rgba(255, 255, 255, 1), 0 0 40px rgba(255, 255, 255, 1),
  0 0 22px rgba(255, 255, 255, 1), 0 0 40px rgba(0, 191, 255, 1),
  0 0 60px rgba(0, 191, 255, 1), 0 0 80px rgba(0, 191, 255, 0.1),
  0 0 100px rgba(0, 191, 255, 0.1), 0 0 140px rgba(0, 191, 255, 0.1),
  0 0 200px rgba(0, 191, 255, 0.1);
 }
 100% {
 text-shadow: 0 0 2px rgba(255, 255, 255, 0.9), 0 0 1px rgba(255, 255, 255, 0.9),
  0 0 10px rgba(255, 255, 255, 0.9), 0 0 20px rgba(0, 191, 255, 0.9),
  0 0 30px rgba(0, 191, 255, 0.9), 0 0 40px rgba(0, 191, 255, 0.9),
  0 0 50px rgba(0, 191, 255, 0.9), 0 0 80px rgba(0, 191, 255, 0.9);
 }
}
</style>


<div class="neon">
<?php
// Begrüßung im Neon-Style

// Neon Buchstaben - Generator
// https://werner-zenk.de/tools/neon.php

$stund date("G");
if (
$stund < 12 && $stund >0$tach "Guten Morgen";
if (
$stund <18 && $stund >12$tach "Guten Tag";
if (
$stund >19$tach "Guten Abend";
echo 
$tach;
?>
</div>
Ausgabe:
Guten Tag

Danke an die Besucher

Zum Beispiel nach einer Bestellung oder Registrierung.

1
2
3
4
5
6
7
8
9
<?php
// Danke an die Besucher

$stund date("G");
if (
$stund < 12$tach "Vielen Dank und einen schönen Morgen!";
if (
$stund <18 && $stund >12$tach "Vielen Dank und einen schönen Tag!";
if (
$stund >19$tach "Vielen Dank und einen schönen Abend!";
echo 
$tach;
?>
Ausgabe:
Vielen Dank und einen schönen Tag!

Zahlen in Stunden und Minuten umrechnen

1
2
3
4
5
6
7
8
9
<?php
// Zahlen in Stunden und Minuten umrechnen

$aMinuntes = [130];
$minSum array_sum($aMinuntes);

echo (int)(
$minSum/60) . " Stunden und " . ($minSum%60) . " Minuten";
// 2 Stunden und 10 Minuten
?>

Zeitgesteuerte Wechselbilder

Dieses Script zeigt alle 4 Monate (Jahreszeiten) ein anderes Bild an.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
// Zeitgesteuerte Wechselbilder (Jahreszeiten) - Beispiel 1

$monat date("n");

if (
$monat == "1" OR $monat == "2" OR $monat == "3") {
 echo 
'<img src="fruehling.jpg">';
}

if (
$monat == "4" OR $monat == "5" OR $monat == "6") {
 echo 
'<img src="sommer.jpg">';
}

if (
$monat == "7" OR $monat == "8" OR $monat == "9") {
 echo 
'<img src="herbst.jpg">';
}

if (
$monat == "10" OR $monat == "11" OR $monat == "12") {
 echo 
'<img src="winter.jpg">';
}
?>

Das Zeitgesteuerte Bild in ein internes CSS einfügen (als Hintergrundbild)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
// Zeitgesteuerte Wechselbilder (Jahreszeiten) - Beispiel 2

$monat date("n");
$bild "";

if (
$monat == "1" OR $monat == "2" OR $monat == "3") {
 
$bild 'fruehling.jpg';
}

if (
$monat == "4" OR $monat == "5" OR $monat == "6") {
 
$bild 'sommer.jpg';
}

if (
$monat == "7" OR $monat == "8" OR $monat == "9") {
 
$bild 'herbst.jpg';
}

if (
$monat == "10" OR $monat == "11" OR $monat == "12") {
 
$bild 'winter.jpg';
}
?>

<style>
div#headerbild {
 background: url(<?=$bild;?>);
 background-repeat: no-repeat;
 background-size: cover;
}
</style>

Zeitgesteuerte Wechselbilder (Monat, Tag, Stunde)

Jeden Monat ein anderes Bild

Benötigt werden 12 Bilder mit diesen Namen: monat1.jpg bis monat12.jpg

1
2
3
4
<?php
// Jeden Monat ein anderes Bild
echo '<img src="monat' date("n") . '.jpg">';
?>

Jeden Wochentag ein anderes Bild

Benötigt werden 7 Bilder mit diesen Namen: wochentag1.jpg bis wochentag7.jpg

1
2
3
4
<?php
// Jeden Wochentag ein anderes Bild
echo '<img src="wochentag' date("N") . '.jpg">';
?>

Jeden Jahrestag ein anderes Bild

Benötigt werden 366 Bilder mit diesen Namen: jahrestag0.jpg bis jahrestag365.jpg

1
2
3
4
<?php
// Jeden Jahrestag ein anderes Bild
echo '<img src="jahrestag' date("z") . '.jpg">';
?>

Jeden Tag ein anderes Bild

Benötigt werden 31 Bilder mit diesen Namen: tag1.jpg bis tag31.jpg

1
2
3
4
<?php
// Jeden Tag ein anderes Bild
echo '<img src="tag' date("j") . '.jpg">';
?>

Jede Stunde ein anderes Bild

Benötigt werden 24 Bilder mit diesen Namen: stunde0.jpg bis stunde23.jpg

1
2
3
4
<?php
// Jeden Stunde ein anderes Bild
echo '<img src="stunde' date("G") . '.jpg">';
?>

Bilder je nach Tageszeit

Benötigt werden 3 Bilder mit diesen Namen: morgens.jpg, mittags.jpg und abends.jpg

1
2
3
4
5
6
7
8
9
<?php
// Bilder je nach Tageszeit

$stunde date("G");
if (
$stunde < 12 && $stunde >0$bild '<img src="morgens.jpg">';
if (
$stunde <18 && $stunde >12$bild '<img src="mittags.jpg">';
if (
$stunde >19$bild '<img src="abends.jpg">';
echo 
$bild;
?>

Zeitansage

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<?php
// Zeitansage

$stunden["0"] = "Null";
$stunden["1"] = "Ein";
$stunden["2"] = "Zwei";
$stunden["3"] = "Drei";
$stunden["4"] = "Vier";
$stunden["5"] = "Fünf";
$stunden["6"] = "Sechs";
$stunden["7"] = "Sieben";
$stunden["8"] = "Acht";
$stunden["9"] = "Neun";
$stunden["10"] = "Zehn";
$stunden["11"] = "Elf";
$stunden["12"] = "Zwölf";
$stunden["13"] = "Dreizehn";
$stunden["14"] = "Vierzehn";
$stunden["15"] = "Fünfzehn";
$stunden["16"] = "Sechzehn";
$stunden["17"] = "Siebzehn";
$stunden["18"] = "Achtzehn";
$stunden["19"] = "Neunzehn";
$stunden["20"] = "Zwanzig";
$stunden["21"] = "Einundzwanzig";
$stunden["22"] = "Zweiundzwanzig";
$stunden["23"] = "Dreiundzwanzig";

$minuten["00"] = "Null";
$minuten["01"] = "Eine";
$minuten["02"] = "Zwei";
$minuten["03"] = "Drei";
$minuten["04"] = "Vier";
$minuten["05"] = "Fünf";
$minuten["06"] = "Sechs";
$minuten["07"] = "Sieben";
$minuten["08"] = "Acht";
$minuten["09"] = "Neun";
$minuten["10"] = "Zehn";
$minuten["11"] = "Elf";
$minuten["12"] = "Zwölf";
$minuten["13"] = "Dreizehn";
$minuten["14"] = "Vierzehn";
$minuten["15"] = "Fünfzehn";
$minuten["16"] = "Sechzehn";
$minuten["17"] = "Siebzehn";
$minuten["18"] = "Achtzehn";
$minuten["19"] = "Neunzehn";
$minuten["20"] = "Zwanzig";
$minuten["21"] = "Einundzwanzig";
$minuten["22"] = "Zweiundzwanzig";
$minuten["23"] = "Dreiundzwanzig";
$minuten["24"] = "Vierundzwanzig";
$minuten["25"] = "Fünfundzwanzig";
$minuten["26"] = "Sechsundzwanzig";
$minuten["27"] = "Siebenundzwanzig";
$minuten["28"] = "Achtundzwanzig";
$minuten["29"] = "Neunundzwanzig";
$minuten["30"] = "Dreißig";
$minuten["31"] = "Einunddreißig";
$minuten["32"] = "Zweiunddreißig";
$minuten["33"] = "Dreiunddreißig";
$minuten["34"] = "Vierunddreißig";
$minuten["35"] = "Fünfunddreißig";
$minuten["36"] = "Sechsunddreißig";
$minuten["37"] = "Siebenunddreißig";
$minuten["38"] = "Achtunddreißig";
$minuten["39"] = "Neununddreißig";
$minuten["40"] = "Vierzig";
$minuten["41"] = "Einundvierzig";
$minuten["42"] = "Zweiundvierzig";
$minuten["43"] = "Dreiundvierzig";
$minuten["44"] = "Vierundvierzig";
$minuten["45"] = "Fünfundvierzig";
$minuten["46"] = "Sechsundvierzig";
$minuten["47"] = "Siebenundvierzig";
$minuten["48"] = "Achtundvierzig";
$minuten["49"] = "Neunundvierzig";
$minuten["50"] = "Fünfzig";
$minuten["51"] = "Einundfünfzig";
$minuten["52"] = "Zweiundfünfzig";
$minuten["53"] = "Dreiundfünfzig";
$minuten["54"] = "Vierundfünfzig";
$minuten["55"] = "Fünfundfünfzig";
$minuten["56"] = "Sechsundfünfzig";
$minuten["57"] = "Siebenundfünfzig";
$minuten["58"] = "Achtundfünfzig";
$minuten["59"] = "Neunundfünfzig";

$h date("G");
$m date("i");

echo 
"<b>Zeitansage:</b><br> <i>$stunden[$h] . " Uhr und
 " $minuten[$m] . ($m == "01" " Minute" " Minuten") . "</i>";
?>
Zeitansage:
Siebzehn Uhr und Sechzehn Minuten

Zeitansage in JavaScript:

Weitere Berechnungen mit dem Datum auf Seite 1 2 3