[英]Using $_SERVER['HTTP_REFERER'];, but modify for www
我正在使用类似这样的代码来从入站链接中获取URL:
$inbound_url = $_SERVER['HTTP_REFERER'];
//then do some stuff writing the url to a database table, but....
//ONLY IF the url doesn't already exist in the table
假设链接来自相同的网站,相同的网页,但仅在www中出现。 所以我得到了:1) http://www.mysite.com/page.html 2) http://mysite.com/page.html
这在我的表中显示了两次,因为一个人有www,一个人没有www。
有没有一种方法可以解析$ _SERVER ['HTTP_REFERER'];的结果; 可以:1)添加www。 缺少的地方,或者2)剥离... http://...www的所有内容。 或..http://
像往常一样先感谢。
你当然可以。 从任何网址中删除www
只需要做一些简单的字符串操作和替换-
$inbound_url = str_replace('http://www','http://',$inbound_url);
根据文档中的定义-
str_replace()
-用替换字符串替换所有出现的搜索字符串
请注意,我在搜索中包括了http://
,以便其他任何出现的字符串www
URL都将保持不变。
用这个
$url = 'http://stackoverflow.com';
$d = array_shift( explode( '.', str_replace('www.', '', parse_url( $url, PHP_URL_HOST )) ) );
echo $d; //stackoverflow
或者你也可以使用
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.