在您自己的php页面的URL中存储其他网站URL的正确协议是什么?
例如,如果我想存储google
,那就很容易了。
MySite.com/test.php?url=http://www.google.com
但是比http://www.google.com
更复杂的URL呢,就像我想存储另一个网站的PHP页面一样。
(例如http://www.AnotherSite.com/page1.php?key=value&key2=value2&key3=value3
)
然后我如何将它存储在我的PHP页面的URL中?你替换所有的“&”吗?带有“\&”的符号短语?有更好的方法吗?这甚至可以起作用吗?
感谢!!!
答案 0 :(得分:2)
只需encode个网址。您可以使用PHP函数urlencode()
和urldecode()
。
答案 1 :(得分:2)
如果您不想考虑它:
$url = 'mysite.com/test.php?' . http_build_query(array(
'url' => $anything_you_want,
));
否则:
$url = 'mysite.com/test.php?url=' . urlencode($anything_you_want);
您也可以使用rawurlencode()
。值得注意的是,它遵循RFC 3986。
进一步阅读:
答案 2 :(得分:2)
如果您想将整个网址用作一个参数,只需使用urlencode()
对其进行编码:
http://us3.php.net/manual/en/function.urlencode.php
示例:
$url = 'http://www.AnotherSite.com/page1.php?key=value&key2=value2&key3=value';
echo 'http://MySite.com/test.php?url='.urlencode($url);
答案 3 :(得分:2)
您可以对网址使用编码。 PHP内置了非常简单的方法来实现这一点。