【发布时间】:2011-04-07 06:44:00
【问题描述】:
我正在生成一个需要原子格式日期的谷歌日历查询字符串。
我正在使用 php 5.1.6 和 date(DATE_ATOM) 来生成格式正确的当前日期。因此,例如,在查询的未编码 url 部分有:
start-max=2010-09-02T10:25:58+01:00
我需要对它进行原始编码,然后它就变成了
start-max%3D2010-09-02T11%253A37%253A59%252B01%253A00
现在如果我 rawurldecode 它变成了
start-max=2010-09-02T11%3A39%3A35%2B01%3A00
所以它没有正确解码,谷歌拒绝了查询......
如果我对查询进行两次 rawurldecode,则日期被解码,但原来的“+”被替换为空格(即使它仍然在上述字符串中编码)
对于 urlencode/urldecode 也是如此 :(
任何想法如何使用这种日期格式对 URL 进行编码/解码?
干杯
【问题讨论】:
-
感谢您的帮助。好的,现在已经清理了编码,但是 url 正在被传递给 simplepie 来处理,并且它不喜欢未编码的日期字符串中的 +,或者编码的日期字符串!如果我使用 date('Y-m-d\TH:i:s\Z'); 我可以让它工作创建日期并将其传递给未编码的 simplepie。不理想,但现在必须这样做,直到我有更多时间进行调查。
标签: php datetime urlencode urldecode