summaryrefslogtreecommitdiff
path: root/ext/xmlrpc/tests/bug44996.phpt
blob: 0f4d016e5a7498754a54d3686cc52e4134dbdbd4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
--TEST--
Bug #44996 (xmlrpc_decode() ignores time zone on iso8601.datetime)
--SKIPIF--
<?php if (!extension_loaded("xmlrpc")) print "skip"; ?>
--FILE--
<?php

function DecodeDatetime($datetime) {
  print "\nISO 8601 datetime $datetime\n";
  $obj = xmlrpc_decode("<?xml version=\"1.0\"?><methodResponse><params><param><value><dateTime.iso8601>$datetime</dateTime.iso8601></value></param></params></methodResponse>");
  print_r($obj);
}

DecodeDatetime("20010909T01:46:40Z");
DecodeDatetime("20010909T00:46:40-01");
DecodeDatetime("2001-09-09T08:46:40+07:00");
DecodeDatetime("2001-09-08T21:46:40-0400");

?>
--EXPECT--
ISO 8601 datetime 20010909T01:46:40Z
stdClass Object
(
    [scalar] => 20010909T01:46:40Z
    [xmlrpc_type] => datetime
    [timestamp] => 1000000000
)

ISO 8601 datetime 20010909T00:46:40-01
stdClass Object
(
    [scalar] => 20010909T00:46:40-01
    [xmlrpc_type] => datetime
    [timestamp] => 1000000000
)

ISO 8601 datetime 2001-09-09T08:46:40+07:00
stdClass Object
(
    [scalar] => 2001-09-09T08:46:40+07:00
    [xmlrpc_type] => datetime
    [timestamp] => 1000000000
)

ISO 8601 datetime 2001-09-08T21:46:40-0400
stdClass Object
(
    [scalar] => 2001-09-08T21:46:40-0400
    [xmlrpc_type] => datetime
    [timestamp] => 1000000000
)