我正在PHP应用程序中使用一个用C#编写的API。特定方法所需的参数之一的类型为DateTime
。我已经尝试过用PHP&SOAP,但这些都不起作用。
我正在使用Soap扩展。此外,该web服务是由政府机构编写的,我相信每个使用过政府API的人都知道让他们改变自己的论点是多么困难。因此,如果解决方案中不包含"与他们交谈并说服他们",我将不胜感激。
实际上应该非常简单。
大多数Web服务都将日期时间作为ISO8601字符串写入SOAP消息中。例如,2014-11-15T18:32:17+00:00
。
以下是使用PHP:编写ISO8601格式字符串的几个建议
-
如何使用PHP 以ISO8601格式显示日期
<?= date("c", strtotime($post[3])) ?>
或
new DateTime('17 Oct 2008'))->format('c');
强烈建议:
获取SoapUI的副本,查看在PHP服务器和C#/SOAP服务器之间传递的实际SOAP消息:
- http://www.soapui.org/