嗨,在Facebook上,主链接上有一个查询字符串,如下所示:facebook.com/?ref=home
当您单击链接并导航到主页时,查询将自动删除.但是,如果我要手动键入该链接,则不会删除查询.他们是怎么做到的?
net*_*der 83
PHP中最简单的方法:
$url = preg_replace('/\?.*/', '', $url);
Run Code Online (Sandbox Code Playgroud)
以这种方式,Facebook所做的可能是JavaScript的事情:
if (location.href.match(/\?.*/) && document.referrer) {
location.href = location.href.replace(/\?.*/, '');
}
Run Code Online (Sandbox Code Playgroud)
haz*_*haz 32
这是答案的另一个派对技巧:
$url = strtok($url, '?');
如果你想在Code Golf赢得胜利,这就是你想要的答案.它有......
lee*_*ers 20
使用parse_url
检查结构良好的网址,同时移除查询字符串:
$link = 'http://facebook.com/page.php?ref=home';
if ($url = parse_url($link)) {
printf('%s://%s%s', $url['scheme'], $url['host'], $url['path']);
}
Run Code Online (Sandbox Code Playgroud)
hig*_*olt 13
如果没有正则表达式或实际解析URL parse_url
,也可以容忍没有查询字符串的URL:
$url = reset((explode('?', $url)));
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
64571 次 |
最近记录: |