Class Quantity
Quantity
Die Quantity-Klasse stellt einen abstrakten Speicher für Datum/Zeitwert zur Verfügung. Es werden keinerlei Berechnungen durchgeführt, da dies die Domäne eines Kalenders, bzw. der Zeitberechnung ist. Der Zeitpunkt wird in Einzelwerten (Jahr, Monat, Tag, Stunden, Minuten, Sekunden, Nanosekunden) gespeichert. Die Quantity-Klasse ist readonly.
Die einzelnen Eigenschaften des Quantity-Objekts können unterschiedlich verwendet werden. Wird eine null übergeben, so gilt dieser Wert als nicht gesetzt. Das ist besonders für die Berechnung von Datums und Zeitwerten wichtig. So kann z.B. aus einem YearMonth-Objekt keine Abfrage auf den Tag erfolgen.
Die Quantity-Klasse ist abstrakt und gibt nicht an, ob es sich um einen Zeitpunkt, ein Intervall oder eine Dauer handelt. Im Kontext der Alvine-Klassen gelten folgende Definitionen.
Quantity Zeitspeicher (Abstrakte Basisklasse) Interval Intervall / Wiederholungen Period Zyklus / Wiederholung Duration Dauer in Stunde, Minute, Sekunde und Nanosekunde Instant Augenblick
// Heiliger Abend $quantity = new Quantity(1920, 12, 24); echo (string)$quantity; // 1920-12-24 00:00:00 // Tag der Mondlandung $quantity = new Quantity(1969, 7, 21, 2, 56, 20); echo (string)$quantity; // 1969-07-21 02:56:20 // 4 Stunden und 8 Minuten $quantity = new Quantity(); $quantity->setTime(4,8); echo (string)$quantity; // 1969-07-21 02:56:20 // Es erfolgt kein Überlauf, beim Überschreiten // der einzelnen Bereiche $quantity = new Quantity(99999, 9999, 9999, 9999, 9999, 9999); echo $quantity; // 99999-9999-9999T9999:9999:9999
- Alvine\Core\Alvine implements Serializable uses Alvine\Core\SerializableImplementation
- Alvine\Date\Quantity
Indirect known subclasses
Alvine\Date\AbstractDateTime, Alvine\Date\Date, Alvine\Date\DateTime, Alvine\Date\Month, Alvine\Date\MonthDay, Alvine\Date\Second, Alvine\Date\Time, Alvine\Date\Year, Alvine\Date\YearMonth, Alvine\Net\Http\Util\DateTimeNamespace: Alvine\Date
Package: Alvine\Date
Category: Framework
License: Licence
Author: schukai GmbH info@schukai.de
Version: Release: $Revision: 173 $
Since: 20110904
Link: Alvine
Located at date/Quantity.class.php
public
|
#
__construct( integer $year = null, integer $month = null, integer $day = null, integer $hour = null, integer $minute = null, integer $second = null, integer $nanosecond = null )
Der Konstruktor erstell ein neues Objekt. |
protected
boolean
|
|
public
integer
|
|
protected
|
|
public
integer
|
|
protected
|
#
setSecond( integer $second )
Setzt die Sekunden (Wertebereich 0-59). Ist der Wert außerhalb des Wertebereichs, so wird der Wert entsprechend auf die Grenze des Wertebereichs gesetzt. |
public
integer
|
|
protected
|
#
setMinute( integer $minute )
Setzt die Minuten (Wertebereich 0-59). Ist der Wert außerhalb des Wertebereichs, so wird der Wert entsprechend auf die Grenze des Wertebereichs gesetzt. |
public
integer
|
|
protected
|
#
setHour( integer $hour )
Setzt die Stunde (Wertebereich 0-23). Ist der Wert außerhalb des Wertebereichs, so wird der Wert entsprechend auf die Grenze des Wertebereichs gesetzt. |
public
integer
|
|
protected
|
#
setDay( integer $day )
Setzt den Tag (Wertebereich 1-12). Ist der Wert außerhalb des Wertebereichs, so wird der Wert entsprechend auf die Grenze des Wertebereichs gesetzt. |
public
integer
|
|
protected
|
#
setMonth( integer $month )
Setzt den Monat (Wertebereich 1-12). Ist der Wert außerhalb des Wertebereichs, so wird der Wert entsprechend auf die Grenze des Wertebereichs gesetzt. |
public
integer
|
|
protected
|
|
public static
|
#
fromDate( integer $year, integer $month = 0, integer $day = 0 )
Erstellt ein neues Quantity-Objekt von einer Datumsangabe |
public static
|
#
fromTime( integer $hour, integer $minute = 0, integer $second = 0, integer $nanosecond = 0 )
Erstellt ein neues Quantity-Objekt von einer Zeitangabe |
public static
|
|
public static
|
|
protected static
|
|
protected static
|
|
public
string
|
|
public static
|
#
fromTimestamp( integer|
Neues Quantity-Objekt aus einem Zeitstempel erstellen. Für die Umwandlung kommt die Funktion date() zum Einsatz |
public static
|
|
public
boolean
|
__call(),
__clone(),
__get(),
__set(),
equals(),
getClass(),
getClone(),
getClosure(),
getHashCode(),
getID(),
getShortID(),
isCallable(),
isInstanceOf(),
propertyExists()
|
serialize(),
unserialize()
|
checkAndAdjustSerialisation(),
serialize(),
unserialize()
|
integer |
DATEMASK
Datumsmaske |
#
112
|
integer |
DATETIMEMASK
Datumszeitmaske |
#
126
|
integer |
TIMEMASK
Zeitmaske (H:m:s) |
#
14
|
integer |
YEARMONTHMASK
JahrMonat Maske |
#
96
|
integer |
MONTHDAYMASK
Monatstages-Maske |
#
48
|
integer |
HOURMINUTEMASK
Stundenminuten-Maske |
#
12
|
integer |
YEARMASK
Maske Jahr |
#
64
|
integer |
MONTHMASK
Maske Monat |
#
32
|
integer |
DAYMASK
Maske Tag |
#
16
|
integer |
HOURMASK
Maske Stunde |
#
8
|
integer |
MINUTEMASK
Maske |
#
4
|
integer |
SECONDMASK
Maske Minute |
#
2
|
integer |
NANOSECONDMASK
Maske Nanosekunde |
#
1
|
APIVERSION,
IDENTIFICATION,
SERIALVERSION,
VERSION
|
protected
|
$nanosecond
Nanosekunden |
#
null
|
protected
integer
|
$second
Sekunde |
#
null
|
protected
integer
|
$minute
Minute |
#
null
|
protected
integer
|
$hour
Stunde |
#
null
|
protected
integer
|
$day
Tag |
#
null
|
protected
integer
|
$month
Monat |
#
null
|
protected
integer
|
$year
Im gregorianischen Kalender ist eine positive Jahreszahl nach Christus und eine negative Zahl vor Christus zu interpretieren. |
#
null
|
protected
integer
|
$mask
Schalter mit den belegten Feldern |
#
null
|
$hash,
$properties
|