关于将使用 LAMP 技术以 PHP 编写的 Web 客户端与使用 WCF 技术以 C# 编写的 Web 服务集成,我在使用 xsd dataTime 时遇到了问题。这个问题与这两种技术使用不同但有效的日期时间格式这一事实有关。
此问题之前已发布在 Gmt php or UTC C# equivalence through SOAP 下, 但没有公认的答案。
我的问题是,我必须从作为字符串的 C# Z 时间格式转换为作为字符串的替代 UTC 日期时间格式,然后可以轻松地将其转换为 PHP DateTime 对象。我希望有人有一个用 PHP 编写的代码片段可以进行字符串转换。鉴于 Web 服务的流行以及 WCF 和 LAMP 都是流行技术这一事实,我很难相信这样的代码片段不容易获得。
所需转换的一个示例是,当给定一个输入时,例如“2012-02-04T13:00:00Z”,它将产生正确的 UTC 输出,特别是“2012-02-05T00:00:00+11” :00'。有关如何完成此转换的详细信息,请参阅 xml schema Timezone 的已接受答案.
有没有人有指向字符串 dateTime 的 Z 时间到 UTC 转换的 PHP 代码片段(或另一种语言)的指针?
最佳答案
如果您正确设置时区并根据需要格式化日期,这应该是微不足道的:
$ php -a
php > date_default_timezone_set('Asia/Tokyo');
php > echo date('Y-m-d\TH:i:sP', strtotime('2012-02-04T13:00:00Z'));
2012-02-04T22:00:00+09:00
关于php - PHP 的 xsd 日期时间转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9952359/