derick Mon Jan 28 20:30:51 2008 UTC Modified files: (Branch: PHP_5_3) /php-src NEWS /php-src/ext/date php_date.c php_date.h Log: - MFH: Added date_timestamp_get() / DateTime::getTimestamp() to retrieve the Unix timestamp belonging to a date object. http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.965.2.91&r2=1.2027.2.547.2.965.2.92&diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.965.2.91 php-src/NEWS:1.2027.2.547.2.965.2.92 --- php-src/NEWS:1.2027.2.547.2.965.2.91 Mon Jan 28 08:55:19 2008 +++ php-src/NEWS Mon Jan 28 20:30:50 2008 @@ -18,6 +18,8 @@ timezone_identifiers_list() / DateTimezone::listIdentifiers(). * date_timestamp_set() / DateTime::setTimestamp() to set a Unix timestamp without invoking the date parser. (Scott) + * date_timestamp_get() / DateTime::getTimestamp() to retrieve the Unix + timestamp belonging to a date object. - Added ability to store associative infor with objects in SplObjectStorage. (Marcus) http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.51.2.13&r2=1.43.2.45.2.51.2.14&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.51.2.13 php-src/ext/date/php_date.c:1.43.2.45.2.51.2.14 --- php-src/ext/date/php_date.c:1.43.2.45.2.51.2.13 Sun Jan 27 17:44:29 2008 +++ php-src/ext/date/php_date.c Mon Jan 28 20:30:50 2008 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_date.c,v 1.43.2.45.2.51.2.13 2008/01/27 17:44:29 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.51.2.14 2008/01/28 20:30:50 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -182,6 +182,7 @@ PHP_FE(date_date_set, NULL) PHP_FE(date_isodate_set, NULL) PHP_FE(date_timestamp_set, NULL) + PHP_FE(date_timestamp_get, NULL) PHP_FE(timezone_open, NULL) PHP_FE(timezone_name_get, NULL) @@ -215,6 +216,7 @@ PHP_ME_MAPPING(setDate, date_date_set, NULL, 0) PHP_ME_MAPPING(setISODate, date_isodate_set, NULL, 0) PHP_ME_MAPPING(setTimestamp, date_timestamp_set, NULL, 0) + PHP_ME_MAPPING(getTimestamp, date_timestamp_get, NULL, 0) {NULL, NULL, NULL} }; @@ -2267,6 +2269,32 @@ } /* }}} */ +/* {{{ proto long date_timestamp_get(DateTime object) + Gets the Unix timestamp. +*/ +PHP_FUNCTION(date_timestamp_get) +{ + zval *object; + php_date_obj *dateobj; + long timestamp; + int error; + + if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O", &object, date_ce_date) == FAILURE) { + RETURN_FALSE; + } + dateobj = (php_date_obj *) zend_object_store_get_object(object TSRMLS_CC); + DATE_CHECK_INITIALIZED(dateobj->time, DateTime); + timelib_update_ts(dateobj->time, NULL); + + timestamp = timelib_date_to_int(dateobj->time, &error); + if (error) { + RETURN_FALSE; + } else { + RETVAL_LONG(timestamp); + } +} +/* }}} */ + static int timezone_initialize(timelib_tzinfo **tzi, /*const*/ char *tz TSRMLS_DC) { char *tzid; http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.h?r1=1.17.2.11.2.3.2.3&r2=1.17.2.11.2.3.2.4&diff_format=u Index: php-src/ext/date/php_date.h diff -u php-src/ext/date/php_date.h:1.17.2.11.2.3.2.3 php-src/ext/date/php_date.h:1.17.2.11.2.3.2.4 --- php-src/ext/date/php_date.h:1.17.2.11.2.3.2.3 Sun Jan 13 15:15:48 2008 +++ php-src/ext/date/php_date.h Mon Jan 28 20:30:51 2008 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_date.h,v 1.17.2.11.2.3.2.3 2008/01/13 15:15:48 derick Exp $ */ +/* $Id: php_date.h,v 1.17.2.11.2.3.2.4 2008/01/28 20:30:51 derick Exp $ */ #ifndef PHP_DATE_H #define PHP_DATE_H @@ -63,6 +63,7 @@ PHP_FUNCTION(date_date_set); PHP_FUNCTION(date_isodate_set); PHP_FUNCTION(date_timestamp_set); +PHP_FUNCTION(date_timestamp_get); PHP_METHOD(DateTimeZone, __construct); PHP_FUNCTION(timezone_open);
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php