我有这个网址https://plus.google.com/+pitneybowes,其中+登录网址。我在我的代码锚定文件中使用了这个URL
但是当我运行我的代码并在浏览器中查看它时,它会被这个https://plus.google.com/%20pitneybowes
取代我想要+登录网址。有必要。如何解决这个问题?
答案 0 :(得分:0)
根据URL specification,%20
和+
是转义空间的等效表示(ASCII 32)。浏览器是否显示%20
或+
是否依赖于实现。
您的网站应该设计为同时处理两者。或者实际上,它不应该使用原始URL,而是使用未转义和解析的URL--在任何一种情况下都包含空格。
如果您真的在对您的网站进行编码,要求将空格明确地表示为+
,并且这在某种程度上是关键任务,那么您就是在为兼容性问题做好准备。
如果您确实需要URL中的+
(未转义),则其十六进制代码为%2B
。
因此
Print(UrlEncode("This is a test")); = "This+is+a+test"
or "This%20is%20a%20test"
Print(UrlDecode("This%20is+a%20test")) = "This is a test"
Print(UrlEncode("What is 2+2?") = "What+is+2%2B2%3F"
答案 1 :(得分:-1)
您可以使用urlencode对您的网址进行编码。解码将自动进行,并且可以从$ _GET获得值。