2
0

Zend_Date-Basic.xml 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 15851 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.date.basic">
  5. <title>Basis Methoden</title>
  6. <para>
  7. Der folgende Abschnitt zeigt die Grundsätzliche Benutzung von
  8. <classname>Zend_Date</classname> hauptsächlich durch Beispiele. Für dieses Handbuch sind
  9. "Daten" immer implizit Kalenderdaten mit Zeiten, selbst wenn es nicht extra erwähnt ist und
  10. visa-versa. Der nicht angegebene Teil wird intern standardmäßig mit "null" angenommen. Das
  11. bedeutet das ein Datum welches kein Kalenderdatum aber eine Zeit von 12 Stunden hat und ein
  12. anderes Datum welches aus einem Kalenderdatum aber ohne Uhrzeit besteht zusammen zu einem
  13. Datum führen welches das Kalenderdatum enthält mit einer Uhrzeit von "Mittags".
  14. </para>
  15. <para>
  16. Das Setzen eines Datums ohne Zeit bedeutet das die Zeit auf 00:00:00 gesetzt wird. Genauso
  17. bedeutet das Setzen einer Zeit ohne Datum das Intern das Datum auf 01.01.1970 gesetzt wird
  18. inklusive der Anzahl an Sekunden welche der vergangenen Stunden, Minuten und Sekunden der
  19. angegebenen Zeit entsprechen. Normalerweise messen Personen Dinge von einem Startpunkt aus,
  20. wie das Jahr 0 A.D. Trotzdem, verwenden die meisten Softwaresysteme die erste Sekunde des
  21. Jahres 1970 als Startpunkt und bezeichnen Zeiten als Abstand zum Zeitpunkt durch Zählen der
  22. Anzahl an Sekunden die seit diesem dem Startpunkt vergangen sind.
  23. </para>
  24. <sect2 id="zend.date.basic.creation">
  25. <title>Aktuelles Datum</title>
  26. <para>
  27. Ohne jegliche Argumente bedeutet die Erstellung einer Instanz das ein Objekt mit dem
  28. aktuellen Gebietsschema und dem aktuellen lokalen Datum zurückgegeben wird, durch
  29. Verwendung von PHP's <code>time()</code> Funktion um den aktuellen
  30. <ulink url="http://en.wikipedia.org/wiki/Unix_Time">UNIX Zeitpunkt</ulink> für das
  31. Objekt zu erhalten. Man muß sicherstellen das die PHP Umgebung die richtige
  32. <link linkend="zend.date.setdefaulttimezone">Standardzeitzone</link> gesetzt hat.
  33. </para>
  34. <example id="zend.date.basic.creation.example-1">
  35. <title>Erstellen des aktuellen Datums</title>
  36. <programlisting language="php"><![CDATA[
  37. $date = new Zend_Date();
  38. // Ausgabe des aktuellen Zeitpunktes
  39. print $date;
  40. ]]></programlisting>
  41. </example>
  42. </sect2>
  43. <sect2 id="zend.date.basic.functions">
  44. <title>Zend_Date durch Beispiele</title>
  45. <para>
  46. Das Durchschauen der Basismethoden von <classname>Zend_Date</classname> ist ein guter
  47. Weg für den Start für jene welche noch nie mit Datums Objekten in anderen Sprachen oder
  48. Frameworks gearbeitet haben. Für jede anbei angeführte Methode gibt es ein kleines
  49. Beispiel.
  50. </para>
  51. <sect3 id="zend.date.simple.functions.get">
  52. <title>Ein Datum ausgeben</title>
  53. <para>
  54. Ein Datum in einem <classname>Zend_Date</classname> Objekt kann als Integer oder
  55. lokalisierte Zeichenkette ausgegeben werden indem man die <code>get()</code> Methode
  56. verwendet. Es gibt viele Optionen welche in einer späteren Sektion beschrieben
  57. werden.
  58. </para>
  59. <example id="zend.date.simple.functions.get.example-1">
  60. <title>get() - Ausgabe eines Datums</title>
  61. <programlisting language="php"><![CDATA[
  62. $date = new Zend_Date();
  63. // Ausgabe des gewünschten Datums
  64. print $date->get();
  65. ]]></programlisting>
  66. </example>
  67. </sect3>
  68. <sect3 id="zend.date.simple.functions.set">
  69. <title>Setzen eines Datums</title>
  70. <para>
  71. Die <code>set()</code> Methode verändert das Datum welches im Objekt gespeichert ist
  72. und gibt das endgültige Datum als Zeitpunkt (nicht als Objekt) zurück. Auch hier
  73. gibt es viele Optionen die in einer späteren Sektion beschrieben werden.
  74. </para>
  75. <example id="zend.date.simple.functions.set.example-1">
  76. <title>set() - Setzen eines Datums</title>
  77. <programlisting language="php"><![CDATA[
  78. $date = new Zend_Date();
  79. // Setzen einer neuen Zeit
  80. $date->set('13:00:00',Zend_Date::TIMES);
  81. print $date->get(Zend_Date::W3C);
  82. ]]></programlisting>
  83. </example>
  84. </sect3>
  85. <sect3 id="zend.date.simple.functions.add">
  86. <title>Addieren und Subtrahieren von Daten</title>
  87. <para>
  88. Das Addieren von zwei Daten mit <code>add()</code> bedeutet normalerweise das
  89. Addieren eines echtes Datums mit einem speziellen Zeitpunkt der einen
  90. Datumsabschnitt repräsentiert, wie z.B. 12 Stunden, wie im nachfolgenden Beispiel
  91. gezeigt. Beide, <code>add()</code> und <code>sub()</code> verwenden die gleichen
  92. Optionen wie <code>set()</code>, welche später erklärt werden.
  93. </para>
  94. <example id="zend.date.simple.functions.add.example-1">
  95. <title>add() - Addieren von Daten</title>
  96. <programlisting language="php"><![CDATA[
  97. $date = new Zend_Date();
  98. // $date verändern durch addieren von 12 Stunden
  99. $date->add('12:00:00', Zend_Date::TIMES);
  100. echo "Datum über get() = ", $date->get(Zend_Date::W3C), "\n";
  101. // benutze die magische __toString() Methode um
  102. // Zend_Date's toString() aufzurufen
  103. echo "Datum über toString() = ", $date, "\n";
  104. ]]></programlisting>
  105. </example>
  106. </sect3>
  107. <sect3 id="zend.date.simple.functions.compare">
  108. <title>Vergleichen von Daten</title>
  109. <para>
  110. Alle Basis Methoden von <classname>Zend_Date</classname> können mit kompletten
  111. Daten, welche in einem Objekt enthalten sind, arbeiten, oder mit Datumsabschnitten,
  112. wie dem Vergleich eines Minutenwertes in einem Datum mit einem absoluten Wert. Zum
  113. Beispiel können die aktuellen Minuten der aktuellen Zeit mit einer speziellen Zahl
  114. von Minuten verglichen werden durch Verwendung von <code>compare()</code> wie im
  115. nachfolgenden Beispiel beschrieben.
  116. </para>
  117. <example id="zend.date.simple.functions.compare.example-1">
  118. <title>compare() - Vergleichen von Daten</title>
  119. <programlisting language="php"><![CDATA[
  120. $date = new Zend_Date();
  121. // Vergleichen von beiden Zeiten
  122. if ($date->compare(10, Zend_Date::MINUTE) == -1) {
  123. print "Diese Stunde ist weniger als 10 Minuten alt";
  124. } else {
  125. print "Diese Stunde ist mehr als 10 Minuten alt";
  126. }
  127. ]]></programlisting>
  128. </example>
  129. <para>
  130. Für einen einfachen Vergleich der Gleichheit kann <code>equals()</code> verwendet
  131. werden, welches ein Boolean zurückgibt.
  132. </para>
  133. <example id="zend.date.simple.functions.compare.example-2">
  134. <title>equals() - Identifizieren eines Datums oder Datumsabschnittes</title>
  135. <programlisting language="php"><![CDATA[
  136. $date = new Zend_Date();
  137. // Vergleichen von zwei Zeiten
  138. if ($date->equals(10, Zend_Date::HOUR)) {
  139. print "Es ist 10Uhr. Zeit für die Arbeit.";
  140. } else {
  141. print "Es ist noch nicht 10Uhr. Du kannst weiterschlafen.";
  142. }
  143. ]]></programlisting>
  144. </example>
  145. </sect3>
  146. </sect2>
  147. </sect1>
  148. <!--
  149. vim:se ts=4 sw=4 et:
  150. -->