在PHP中返回无效日期的API
我在我的代码中使用了一个API,我得到的日期是这样的在PHP中返回无效日期的API,php,json,api,date,curl,Php,Json,Api,Date,Curl,我在我的代码中使用了一个API,我得到的日期是这样的 "DateOfBirth":Date(-2208960000000-0800) 我在php代码中使用了Curl,如果我在fiddler或任何REST客户机中尝试API,我会得到正确的日期,如2010年3月22日,我认为2208960000000可能是unix时间戳,但似乎很奇怪,在REST客户机中,当我在php代码中使用时,响应是不同的,完全不同的 编辑: API的响应是XML,但我在CURL中使用的是内容类型:application/js
"DateOfBirth":Date(-2208960000000-0800)
我在php代码中使用了Curl,如果我在fiddler或任何REST客户机中尝试API,我会得到正确的日期,如2010年3月22日,我认为2208960000000可能是unix时间戳,但似乎很奇怪,在REST客户机中,当我在php代码中使用时,响应是不同的,完全不同的
编辑:
API的响应是XML,但我在CURL中使用的是内容类型:application/json,然后我使用json_Encode,可以轻松地遍历API,我想当我通过json获取数据时,它会发送给我这个DateOfBirth:Date-2208960000000-0800
这方面有什么帮助吗
谢谢试试这个:
var isWcfJsonDate = /\/Date(.*)\//.test("Your Date String");
if (isWcfJsonDate)
{
dateStr = dateStr.match(/Date\((.*?)\)/)[1];
dateValue = new Date(parseInt(dateStr));
return dateValue;
}
dateValue = new Date(dateObject);
console.log( dateValue); //Use your date value
你能展示一下你用来生成/解析日期的代码吗?这看起来就像是来自.NET的JSON日期。看见不幸的是,PHP的json_解码无法识别它。@newfurnityedited@newfurniturey日期是通过API生成的,我只是从API获取数据。您在32位系统上使用32位软件吗?看起来像是某种溢出,记住JS时间的单位是毫秒而不是秒。@rm-rf它是转换成json格式的xml,没有人读过这个问题吗?好的,一点搜索给了我这个:是的,它是JS,只是我在尝试fiddler,所以这个有效。正如Dan和rm-rf所说,它必须转换成所需的格式,类似上面@rm-rf发布的链接应该可以使用