return props;
}
-#define PHP_DATE_INTERVAL_ADD_PROPERTY_I64(n, f) \
- do { \
- char i64_buf[DATE_I64_BUF_LEN]; \
- MAKE_STD_ZVAL(zv); \
- DATE_I64A(intervalobj->diff->f, i64_buf, DATE_I64_BUF_LEN); \
- ZVAL_STRING(zv, i64_buf, 1); \
- zend_hash_update(props, n, strlen(n) + 1, &zv, sizeof(zval), NULL); \
- } while(0);
-
#define PHP_DATE_INTERVAL_ADD_PROPERTY(n,f) \
MAKE_STD_ZVAL(zv); \
- ZVAL_LONG(zv, intervalobj->diff->f); \
+ ZVAL_LONG(zv, (long)intervalobj->diff->f); \
zend_hash_update(props, n, strlen(n) + 1, &zv, sizeof(zval), NULL);
PHP_DATE_INTERVAL_ADD_PROPERTY("y", y);
PHP_DATE_INTERVAL_ADD_PROPERTY("first_last_day_of", first_last_day_of);
PHP_DATE_INTERVAL_ADD_PROPERTY("invert", invert);
if (intervalobj->diff->days != -99999) {
- PHP_DATE_INTERVAL_ADD_PROPERTY_I64("days", days);
+ PHP_DATE_INTERVAL_ADD_PROPERTY("days", days);
} else {
MAKE_STD_ZVAL(zv);
ZVAL_FALSE(zv);
zend_hash_update(props, "days", 5, &zv, sizeof(zval), NULL);
}
PHP_DATE_INTERVAL_ADD_PROPERTY("special_type", special.type);
- PHP_DATE_INTERVAL_ADD_PROPERTY_I64("special_amount", special.amount);
+ PHP_DATE_INTERVAL_ADD_PROPERTY("special_amount", special.amount);
PHP_DATE_INTERVAL_ADD_PROPERTY("have_weekday_relative", have_weekday_relative);
PHP_DATE_INTERVAL_ADD_PROPERTY("have_special_relative", have_special_relative);
["invert"]=>
int(0)
["days"]=>
- string(1) "3"
+ int(3)
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["invert"]=>
int(0)
["days"]=>
- string(1) "0"
+ int(0)
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
int(0)
}
-string(328) "O:12:"DateInterval":15:{s:1:"y";i:0;s:1:"m";i:0;s:1:"d";i:0;s:1:"h";i:4;s:1:"i";i:0;s:1:"s";i:0;s:7:"weekday";i:0;s:16:"weekday_behavior";i:0;s:17:"first_last_day_of";i:0;s:6:"invert";i:0;s:4:"days";s:1:"0";s:12:"special_type";i:0;s:14:"special_amount";s:1:"0";s:21:"have_weekday_relative";i:0;s:21:"have_special_relative";i:0;}"
+string(320) "O:12:"DateInterval":15:{s:1:"y";i:0;s:1:"m";i:0;s:1:"d";i:0;s:1:"h";i:4;s:1:"i";i:0;s:1:"s";i:0;s:7:"weekday";i:0;s:16:"weekday_behavior";i:0;s:17:"first_last_day_of";i:0;s:6:"invert";i:0;s:4:"days";i:0;s:12:"special_type";i:0;s:14:"special_amount";i:0;s:21:"have_weekday_relative";i:0;s:21:"have_special_relative";i:0;}"
DateInterval::__set_state(array(
'y' => 0,
'm' => 0,
'weekday_behavior' => 0,
'first_last_day_of' => 0,
'invert' => 0,
- 'days' => '0',
+ 'days' => 0,
'special_type' => 0,
- 'special_amount' => '0',
+ 'special_amount' => 0,
'have_weekday_relative' => 0,
'have_special_relative' => 0,
))object(DateInterval)#5 (15) {
["invert"]=>
int(0)
["days"]=>
- string(1) "0"
+ int(0)
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["invert"]=>
int(0)
["days"]=>
- string(1) "0"
+ int(0)
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["invert"]=>
int(1)
["days"]=>
- string(4) "2400"
+ int(2400)
["special_type"]=>
int(0)
["special_amount"]=>
- string(2) "-1"
+ int(-1)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["invert"]=>
int(0)
["days"]=>
- string(1) "0"
+ int(0)
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["invert"]=>
int(1)
["days"]=>
- string(3) "437"
+ int(437)
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["invert"]=>
int(0)
["days"]=>
- string(3) "294"
+ int(294)
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["invert"]=>
int(0)
["days"]=>
- string(3) "294"
+ int(294)
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["invert"]=>
int(0)
["days"]=>
- string(1) "0"
+ int(0)
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["invert"]=>
int(0)
["days"]=>
- string(1) "0"
+ int(0)
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["invert"]=>
int(0)
["days"]=>
- string(1) "0"
+ int(0)
["special_type"]=>
int(0)
["special_amount"]=>
- string(19) "9223372036854775807"
+ int(-1)
["have_weekday_relative"]=>
int(9)
["have_special_relative"]=>
--- /dev/null
+--TEST--\r
+Bug #53437 (Check that var_dump out is the same using the whole object or it's single properties), variation 4\r
+--FILE--\r
+<?php\r
+$dt = new DateTime('2009-10-11');\r
+\r
+$df = $dt->diff(new DateTime('2009-10-13'));\r
+\r
+var_dump($df,\r
+ $df->y,\r
+ $df->m,\r
+ $df->d,\r
+ $df->h,\r
+ $df->i,\r
+ $df->s,\r
+ $df->invert,\r
+ $df->days);\r
+\r
+?>\r
+==DONE==\r
+--EXPECTF--\r
+object(DateInterval)#%d (15) {\r
+ ["y"]=>\r
+ int(0)\r
+ ["m"]=>\r
+ int(0)\r
+ ["d"]=>\r
+ int(2)\r
+ ["h"]=>\r
+ int(0)\r
+ ["i"]=>\r
+ int(0)\r
+ ["s"]=>\r
+ int(0)\r
+ ["weekday"]=>\r
+ int(0)\r
+ ["weekday_behavior"]=>\r
+ int(0)\r
+ ["first_last_day_of"]=>\r
+ int(0)\r
+ ["invert"]=>\r
+ int(0)\r
+ ["days"]=>\r
+ int(2)\r
+ ["special_type"]=>\r
+ int(0)\r
+ ["special_amount"]=>\r
+ int(0)\r
+ ["have_weekday_relative"]=>\r
+ int(0)\r
+ ["have_special_relative"]=>\r
+ int(0)\r
+}\r
+int(0)\r
+int(0)\r
+int(2)\r
+int(0)\r
+int(0)\r
+int(0)\r
+int(0)\r
+int(2)\r
+==DONE==\r
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>
["invert"]=>
int(0)
["days"]=>
- string(2) "33"
+ int(33)
["special_type"]=>
int(0)
["special_amount"]=>
- string(1) "0"
+ int(0)
["have_weekday_relative"]=>
int(0)
["have_special_relative"]=>