NAME
ORM::Date - Date handler class.
SYNOPSIS
$date = ORM::Date->new( [ 2006, 1, 25 ] );
print $date->mysql_date,"\n";
$date = $date->diff( [ 0, 0, -2 ] );
print $date->mysql_date,"\n";
The output is:
2006-01-25
2005-11-25
DESCRIPTION
This class introduces minimal interface to handle database table fields of type 'DATE'. It can be used to store time alogn with date, but ORM uses class ORM::Datetime
to handle fields of type DATETIME.
Please also consult ORM::Datetime to be sure you know how these classes are used by ORM.
If you want to use another class to handle 'DATE' fields, please consult:
ORM::Tutorial (THIRD PARTY CLASSES)
ORM (
_db_type_to_class
method).
CONSTRUCTORS
- new( [ $year, $month, $mday, $hour, $min, $sec ] )
-
Create new
ORM::Date
object as specified in array reference.$year
should be exact four digit value.$month
is number in range between 1 and 12.If some value is out of range then it is treated as in
mktime
syscall, e.g.[2005,10,15,25,15,00]
is the same as[2005,10,16,01,15,00]
. - new_epoch( $seconds_since_epoch )
-
Create date object from value of seconds since epoch (as returned by
time
).ORM::Date->new_epoch( time )
is the same asORM::Date->current
. - new_mysql( $datetime_string )
-
Create date object from MySQL DATE or DATETIME string.
OBJECT PROPERTIES
- epoch
-
Return seconds since epoch for the date object.
- sec
-
Return 'seconds' part of the date.
- min
-
Return 'minutes' part of the date.
- hour
-
Return 'hours' part of the date.
- mday
-
Return day of month of the date.
- wday
-
Return day of week of the date. Value is as returned by
localtime
in list context. - yday
-
Return day of year part of the date.
- month
-
Return month of the date.
- year
-
Return year of the date.
- mysql_date
-
Return date in MySQL format (YYYY-MM-DD).
- mysql_time
-
Return time part of the date in MySQL format (HH:MM:SS).
- mysql_datetime
-
Return date and time in MySQL format (YYYY-MM-DD HH:MM:SS).
- datetime_str
-
Return date string as returned by
localtime
in scalar context.
OBJECT METHODS
- set_epoch( $epoch )
-
Change object by resetting its epoch time to
$epoch
value. - copy()
-
Return copy of the object.
- diff( [ $year, $month, $mday, $hour, $min, $sec ] )
-
Return date object with changes applied as specified in argument. Out of range values for resulting object are handled as in
mktime
syscall. - date
-
Return object itself.
- datetime
-
Return
ORM::datetime
object containing the same date.
OVERLOADED OPERATORS
Class ORM::Date
overloads following operators:
'>', '<', '>=', '<=', '==', '!=', '<=>', 'cmp'
SEE ALSO
AUTHOR
Alexey V. Akimov
COPYRIGHT AND LICENSE
Copyright (C) 2005-2006 Alexey V. Akimov
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA