mirror of
https://gitlab.com/harald.mueller/aktuelle.kurse.git
synced 2024-10-19 09:55:03 +02:00
403 lines
14 KiB
HTML
403 lines
14 KiB
HTML
<html>
|
|
<head>
|
|
|
|
<title>PHP-Einfach.de - PHP Einführung - Datum und Uhrzeit</title>
|
|
<meta name="Author" content="Andavos">
|
|
<meta name="Publisher" content="Andavos">
|
|
<meta name="Copyright" content="Andavos">
|
|
<link rel="stylesheet" href="css/main.css" tppabs="http://www.php-einfach.de/offline/css/main.css" type="text/css">
|
|
</head>
|
|
<body text="#000000" bgcolor="#DDDDDD" link="#004A95" alink="#004A95" vlink="#525252">
|
|
|
|
<table align="center" height="100%" width="100%" cellspacing="0" border="0" cellpadding="0">
|
|
<tr>
|
|
<td align="center" valign="middle" height="100%" width="100%">
|
|
|
|
<table height="100" width="750" cellspacing="0" border="0" cellpadding="0">
|
|
<tr>
|
|
<td height="100" bgcolor="#FFE09F" width="750"><img src="grafiken/banner_top.jpg" tppabs="http://www.php-einfach.de/offline/grafiken/banner_top.jpg" width="750" height="100" border="0" alt="">
|
|
<a name="oben"></a></td>
|
|
</tr>
|
|
</table>
|
|
|
|
|
|
|
|
|
|
<table height="650" width="750" cellspacing="0" border="0" cellpadding="0">
|
|
<tr>
|
|
<td valign="top" bgcolor="#FFE09F" width="160">
|
|
|
|
<table width="160" cellspacing="0" border="0" cellpadding="0">
|
|
<tr>
|
|
<td height="100" width="5"></td>
|
|
<td class="black" height="100" width="150">
|
|
|
|
<br><b><center><img src="grafiken/side_navigation.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_navigation.gif" width="150" height="25" border="0" alt=""></center></b>
|
|
<a target="_blank" class="blue" href="http://www.php-einfach.de/index.php"><b>»</b> Startseite</a><br>
|
|
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_news.php"><b>»</b> Newsübersicht</a><br>
|
|
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_email.php"><b>»</b> Kontakt</a><br>
|
|
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_impressum.php"><b>»</b> Impressum</a><br><br>
|
|
|
|
|
|
<center><img src="grafiken/side_community.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_community.gif" width="150" height="25" border="0" alt=""></center>
|
|
<a target="_blank" class="blue" target="_blank" href="http://forum.php-einfach.de/"><b>»</b> Forum</a><br>
|
|
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_gaestebuch.php"><b>»</b> Gästebuch</a><br><br>
|
|
|
|
|
|
<center><img src="grafiken/side_tutorials.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_tutorials.gif" width="150" height="25" border="0" alt=""></center>
|
|
<a class="blue" href="einf_php.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php.php"><b>»</b> Einführung PHP</a><br>
|
|
|
|
|
|
<a class="blue" href="einf_php_anfang.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_anfang.php"><b>»</b> Anfang</a><br>
|
|
<a class="blue" href="einf_php_erste_schritte.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_erste_schritte.php"><b>»</b> Erste Schritte</a><br>
|
|
<a class="blue" href="einf_php_variablen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_variablen.php"><b>»</b> Variablen</a><br>
|
|
<a class="blue" href="einf_php_if-anweisung.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_if-anweisung.php"><b>»</b> if-Anweisung</a><br>
|
|
<a class="blue" href="einf_php_logische_operatoren.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_logische_operatoren.php"><b>»</b> Log. Operatoren</a><br>
|
|
<a class="blue" href="einf_php_uebung1.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_uebung1.php"><b>»</b> Übung</a><br>
|
|
<a class="blue" href="einf_php_dateien.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_dateien.php"><b>»</b> Dateien</a><br>
|
|
<a class="blue" href="einf_php_schleifen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_schleifen.php"><b>»</b> Schleifen</a><br>
|
|
<a class="blue" href="einf_php_array.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_array.php"><b>»</b> Array</a><br>
|
|
<a class="blue" href="einf_php_dateien2.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_dateien2.php"><b>»</b> Dateien Teil 2</a><br>
|
|
<a class="blue" href="einf_php_datum.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_datum.php"><b>»</b> Datum & Zeit</a><br>
|
|
<a class="blue" href="einf_php_email.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_email.php"><b>»</b> Mail Funktion</a><br>
|
|
<div style="position: relative; left:15;" >
|
|
<a class="blue"href="einf_php_suchen_ersetzen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_suchen_ersetzen.php"><b>»</b> Suchen & Ersetzen</a><br>
|
|
<a class="blue" href="einf_php_nuetz_funktionen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_nuetz_funktionen.php"><b>»</b> Nützliche Funktionen</a><br>
|
|
</div>
|
|
<a class="blue" href="einf_php_sessions.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_sessions.php"><b>»</b> Sessions</a><br><br>
|
|
|
|
|
|
|
|
<a class="blue" href="einf_mysql.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql.php"><b>»</b> Einführung MySQL</a><br>
|
|
|
|
<br>
|
|
<center>
|
|
<a target="_blank" href="http://www.php-einfach.de/nav_verlinkung.php"><img src="grafiken/php-einfach.gif" tppabs="http://www.php-einfach.de/offline/grafiken/php-einfach.gif" width="88" height="31" border="0" alt="PHP-Einfach.de"></a><br><br>
|
|
|
|
<a target="_blank" href="http://www.digicount.de/"><b>Counterdienst:</b></a>
|
|
<a target="_blank" href="http://www.php-einfach.de/nav_digicount.php"><div>
|
|
<img src="grafiken/digicount_livedemo.jpg" tppabs="http://www.php-einfach.de/offline/grafiken/digicount_livedemo.jpg" border="0" alt="Digicount.de"><br>
|
|
<small>Unser werbefreier Counter- und Statistikdienst</small></div>
|
|
|
|
</a>
|
|
</center> </td>
|
|
<td height="100" width="5"></td>
|
|
</tr>
|
|
</table>
|
|
|
|
</td>
|
|
<td valign="top" bgcolor="#FFFFFF" width="430">
|
|
|
|
<table width="430" cellspacing="0" border="0" cellpadding="0">
|
|
<tr>
|
|
<td height="100" width="10"></td>
|
|
<td valign="top" class="black" height="100" width="410">
|
|
<br>
|
|
<h4>Datum und Uhrzeit</h4>
|
|
|
|
|
|
Oft ist es interessant zu wissen, wann etwas gespeichert wurde, deswegen unterstützt PHP auch Datums- und Uhrzeitangaben. <br><br>
|
|
|
|
Das Datum und die Zeit werden von der Server Uhr abgelesen und können somit nicht von dem Anwender manipuliert werden, allerdings sollte die Server Uhr dann auch richtig gehen.<br><br>
|
|
|
|
In PHP ermittelt man die Uhrzeit zuerst mit einem <b>UNIX-Timestamp</b>. Dieser beinhaltet alle Sekunden seit dem 1.1.1970 um 0:00 Uhr. Dadurch entsteht so ein Wert:
|
|
1175874867<br><br>
|
|
|
|
Mit diesem Wert können wir noch nicht viel Anfangen, aber PHP darum um so mehr.<br><br>
|
|
|
|
Aber zuerst brauchen wir den Timestamp, das geht so:
|
|
<font color="#606060">
|
|
<pre>
|
|
<?php
|
|
$timestamp = time();
|
|
?>
|
|
</pre>
|
|
</font>
|
|
|
|
Mit dem Befehl <b>time()</b> ermitteln wir den aktuellen Timestamp und dieser wird in der Variable <b>$timestamp</b> gespeichert.<br><br>
|
|
|
|
Jetzt gibt es die Funktion <b>date(<i>format, timestamp</i>)</b><br><br>
|
|
|
|
Um jetzt ein Datum auszugeben, wenden wir den Befehl <b>date</b> mal an:
|
|
<font color="#606060">
|
|
<pre>
|
|
<?php
|
|
$timestamp = time();
|
|
$datum = date("d.m.Y - H:i", $timestamp);
|
|
echo $datum;
|
|
?>
|
|
</pre>
|
|
</font>
|
|
|
|
Das Ergebnis sieht so aus:<br>
|
|
<i>
|
|
06.04.2007 - 17:54</i>
|
|
|
|
<a name="#format"></a>
|
|
|
|
Hier sind ein paar Formate die Ihr benutzen könnt.<br><br>
|
|
|
|
<table align="center" bordercolorlight="#000000" bordercolordark="#000000" cellspacing="0" cellpadding="5" border="1" class="black">
|
|
<tr bgcolor="#E0E0E0">
|
|
<th>Format</th>
|
|
<th>Funktion</th>
|
|
<th>Beispiel</th>
|
|
</tr>
|
|
<tr>
|
|
<td>d</td>
|
|
<td>Tag des Monats, zweistellig</td>
|
|
<td>04, 15</td>
|
|
</tr>
|
|
<tr>
|
|
<td>j</td>
|
|
<td>Tag des Monats</td>
|
|
<td>5, 23</td>
|
|
</tr>
|
|
<tr>
|
|
<td>m</td>
|
|
<td>Nummer des Monats, zweistellig</td>
|
|
<td>05, 12</td>
|
|
</tr>
|
|
<tr>
|
|
<td>n</td>
|
|
<td>Nummer des Monats</td>
|
|
<td>4, 11</td>
|
|
</tr>
|
|
<tr>
|
|
<td>y</td>
|
|
<td>Jahr, zweistellig</td>
|
|
<td>98, 05</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Y</td>
|
|
<td>Jahr, vierstellig </td>
|
|
<td>1998, 2005</td>
|
|
</tr>
|
|
<tr>
|
|
<td>H</td>
|
|
<td>Stunden im 24-Stunden-Format, zweistellig </td>
|
|
<td>04, 18</td>
|
|
</tr>
|
|
<tr>
|
|
<td>G</td>
|
|
<td>Stunden im 24-Stunden-Format</td>
|
|
<td>4, 14</td>
|
|
</tr>
|
|
<tr>
|
|
<td>i</td>
|
|
<td>Minuten, zweistellig</td>
|
|
<td>04, 32</td>
|
|
</tr>
|
|
<tr>
|
|
<td>s</td>
|
|
<td>Sekunden, zweistellig</td>
|
|
<td>02, 55</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>w</td>
|
|
<td>Wochentag in Zahlenwert</td>
|
|
<td>1, 5</td>
|
|
</tr>
|
|
</table>
|
|
<br>
|
|
Das sind die wichtigsten Formate, aber es gibt noch <a href="http://www.php-einfach.net/php /function.date.php#AEN20146" target="_blank">weitere Formate</a>, die man aber eher selten benötigt.<br>
|
|
<br>
|
|
|
|
Die Zeichen zwischen den Buchstaben (<i>d</i><b>.</b><i>m</i><b>.</b><i>Y</i>) dienen zur Trennung der Werte (Tag.Monat.Jahr), man kann diese auch weglassen bzw. ändern.
|
|
<br><br>
|
|
|
|
Ihr könntet das Datum auch so ermitteln:
|
|
<font color="#606060">
|
|
<pre>
|
|
<?php
|
|
$datum = date("d.m.Y - H:i");
|
|
echo $datum;
|
|
?>
|
|
</pre>
|
|
</font>
|
|
|
|
Dabei wird immer vom aktuellen Timestamp ausgegangen, man kann aber auch den Timestamp in einer Datei, Variable bzw. in einer Datenbank abspeichern. <br>
|
|
Diesen kann man später abfragen und dann ausgeben.<br><br>
|
|
|
|
<h3>Wann wurde das geschrieben?</h3>
|
|
Manchmal möchte man wissen, vor wie vielen Minuten, Stunden oder auch Tagen etwas geschrieben wurde.<br><br>
|
|
|
|
Man könnte jetzt denken, dies würde so gehen, aber das ist <b>falsch</b>:
|
|
<font color="#606060">
|
|
<pre>
|
|
<?php
|
|
$timestamp = "120";
|
|
$test = date("i", $timestamp);
|
|
echo $test;
|
|
?>
|
|
</pre>
|
|
</font>
|
|
|
|
Hier bekommen wir als Ausgabe <b>02</b>, weil 120 Sekunden 2 Minuten sind. Aber gebt dort anstatt eine 120 eine <b>10900</b> ein.<br>
|
|
Das wären dann natürlich viel mehr als 2 Minuten (181 Min.), aber als Ausgabe erhalten wir <b>01</b>.<br>
|
|
Das kommt, weil PHP immer die Minuten für eine bestimmte Uhrzeit angibt, und das ist natürlich nicht richtig.<br><br>
|
|
|
|
Deswegen brauchen wir für so etwas Mathe.<br><br>
|
|
|
|
|
|
Wie wir wissen, hat 1 Minute 60 Sekunden, also teilen wir die Sekunden einfach durch 60.
|
|
<font color="#606060">
|
|
<pre>
|
|
<?php
|
|
$timestamp = "120";
|
|
echo round($timestamp / 60);
|
|
?>
|
|
</pre>
|
|
</font>
|
|
|
|
Mit round lassen wir den Wert auf, bzw. abrunden.<br> Möchtet Ihr den Wert immer abrunden, so benutzt anstatt <b>round</b> einfach <b>floor</b>.<br><br>
|
|
|
|
|
|
<h3>Heute ist Freitag</h3>
|
|
Manchmal möchte man ausgeben: Heute ist <b>Freitag</b>.<br><br>
|
|
|
|
PHP selber kann nur die Wochentage in der englischen Schreibweise ausgeben, aber wir möchten ja die deutsche Schreibweise benutzen.<br><br>
|
|
|
|
Deswegen erstellen wir als erstes ein Array, indem wir die ganzen Wochentagsnamen speichern:
|
|
<font color="#606060">
|
|
<pre>
|
|
<?php
|
|
$tage = array("Sonntag","Montag","Dienstag",
|
|
"Mittwoch","Donnerstag","Freitag","Samstag");
|
|
?>
|
|
</pre>
|
|
</font>
|
|
|
|
Um jetzt den richtigen Tag auszugeben, verwenden wir so eine Ausgabe: <b>$tage[<i>Nummer</i>]</b><br><br>
|
|
|
|
Um die Nummer des Tages zu bekommen, benutzen wir wieder die Date-Funktion
|
|
<font color="#606060">
|
|
<pre>
|
|
<?php
|
|
$tag = date("w");
|
|
?>
|
|
</pre>
|
|
</font>
|
|
|
|
Das Format <b>w</b> gibt uns den Wochentag zurück.<br>
|
|
Ihr könnt dort natürlich auch den Timestamp zu einem bestimmten Zeitpunkt angeben. <br>
|
|
|
|
Jetzt geben wir das einfach aus:
|
|
<font color="#606060">
|
|
<pre>
|
|
<?php
|
|
echo $tage[$tag]
|
|
?>
|
|
</pre>
|
|
</font>
|
|
|
|
<br><br>
|
|
|
|
So kann man auch Monatsnamen ausgeben lassen, allerdings fängt ein Array bei 0 an zu Nummerieren, aber es gibt keinen Monat <b>0</b>.<br>
|
|
Darum müssen wir den Werten des Array die Monatszahl zuordnen:
|
|
<font color="#606060">
|
|
<pre>
|
|
<?php
|
|
$monate = array(
|
|
1=>"Januar",
|
|
2=>"Februar",
|
|
3=>"März",
|
|
4=>"April",
|
|
5=>"Mai",
|
|
6=>"Juni",
|
|
7=>"Juli",
|
|
8=>"August",
|
|
9=>"September",
|
|
10=>"Oktober",
|
|
11=>"November",
|
|
12=>"Dezember");
|
|
?>
|
|
</pre>
|
|
</font>
|
|
|
|
Danach fragen wir die Zahl des Monats ab:
|
|
<font color="#606060">
|
|
<pre>
|
|
<?php
|
|
$monat = date("n");
|
|
?>
|
|
</pre>
|
|
</font>
|
|
|
|
Dies geht mit dem Format <b>n</b>, zum Schluss lassen wir das wieder wie oben ausgeben:
|
|
<font color="#606060">
|
|
<pre>
|
|
<?php
|
|
echo $monate[$monat];
|
|
?>
|
|
</pre>
|
|
</font>
|
|
|
|
Die Ausgabe wäre: <b>
|
|
April</b>
|
|
<br><br>
|
|
|
|
|
|
Mit PHP können wir auch <a href="einf_php_email.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_email.php">E-Mails</a> verschicken.<br><br>
|
|
|
|
|
|
|
|
<a href="http://www.php-einfach.de/nav_impressum.php">Autor Andavos</a>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div align="center"><a href="#oben">Nach oben</a></div>
|
|
</td>
|
|
<td height="100" width="10"></td>
|
|
</tr>
|
|
</table>
|
|
|
|
</td>
|
|
<td valign="top" bgcolor="#FFE09F" width="160">
|
|
|
|
<table width="160" cellspacing="0" border="0" cellpadding="0">
|
|
<tr>
|
|
<td height="100" width="5"></td>
|
|
<td valign="top" class="black2" height="100" width="150">
|
|
|
|
<br><b><center><img src="grafiken/side_news.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_news.gif" width="150" height="25" border="0" alt=""></center></b>
|
|
|
|
|
|
<a target="_blank" href="http://www.php-einfach.de/nav_news.php">News</a>
|
|
<br><br>
|
|
|
|
<b><center><img src="grafiken/side_forum.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_forum.gif" width="150" height="25" border="0" alt=""></center></b>
|
|
<a target="_blank" href="http://forum.php-einfach.de/">Forum</a>
|
|
<br><br>
|
|
|
|
<b><center><img src="grafiken/side_newsletter.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_newsletter.gif" width="150" height="25" border="0" alt="Newsletter"></center></b>
|
|
|
|
<form target="_blank" method="post" action="http://www.php-einfach.de/clanletter/save.php">
|
|
|
|
|
|
<br> <br>
|
|
<div align="center">© PHP-Einfach.de 2003 - 2007 </div>
|
|
</td>
|
|
<td height="100" width="5"></td>
|
|
</tr>
|
|
</table>
|
|
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
|
|
|
|
|
|
|
|
</body>
|
|
</html> |