soap php中发生日期时间错误

时间:2012-04-16 05:19:43

标签: php soap

我现在在php中使用soap方法创建redbus api。

现在我的编码有一些日期时间问题。这些是代码

$c = new soapclient('...wsdl....',
 array('Authentication' => array('LoginID' =>'x','Password'=>'x')));

$timezone = new DateTimeZone('UTC');
 $time='2012-04-17T16:50:45';
$date = new DateTime($time,$timezone);
$sourceid=array('SourceID'=>'244','DestinationID'=>'477','DateOfJourney' =>$date);

它显示错误为 致命错误:未捕获的SoapFault异常:[soap:Client]服务器无法读取请求。 ---> XML文档中存在错误(2,252)。 --->字符串''不是有效的AllXsd值

我应该是日期问题

1 个答案:

答案 0 :(得分:1)

好的,如果你需要PHP,那么它就是:

替换

$sourceid=array('SourceID'=>'244','DestinationID'=>'477','DateOfJourney' =>$date);

$sourceid=array('SourceID'=>'244','DestinationID'=>'477','DateOfJourney' =>str_replace($date->format( 'P' ), '', $date->format( 'c' )));

希望这有帮助。