小灰博客--小灰IT技术博客 | sky00.com

PHP获取各式各样的网址

记载一下用PHP来获取各种网址URL的方法,当然,如果你想用网址作为判断条件,而你的网址已经伪静态或者经过处理了,你最好先输出一下对应的变量看看原始网址是什么,比个简单的例子,你当前打开的网址是http://www.sky00.com/phone/tuan/all-0-238,这个网址是经过伪静态或者重写过的,你如果判断的时候就不能if($_SERVER[‘HTTP_HOST’].$_SERVER[‘REQUEST_URI’]==’http://www.sky00.com/phone/tuan/all-0-238’)来做判断。而是你应该先输出一下$_SERVER[‘HTTP_HOST’].$_SERVER[‘REQUEST_URI,看看真实网址是什么,比如输出后我的真实网址是www.sky00.com/phone/index.php/tuan/all-0-0-1,那么你的判断语句应该写成if ($_SERVER[‘HTTP_HOST’].$_SERVER[‘REQUEST_URI’]==’www.sky00.com/phone/index.php/tuan/all-0-0-1’)。下面是具体的网址获取。

测试网址: http://www.sky00.com/blog/testurl.php?id=5

获取域名或主机地址 :

1
echo $_SERVER['HTTP_HOST']."<br>"; #www.sky00.com

获取网页地址 :

1
echo $_SERVER['PHP_SELF']."<br>"; #/blog/testurl.php

获取网址参数 :

1
echo $_SERVER["QUERY_STRING"]."<br>"; #id=5

获取用户代理 :

1
echo $_SERVER['HTTP_REFERER']."<br>";

获取完整的url:

1
2
3
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
#http://www.sky00.com/blog/testurl.php?id=5

包含端口号的完整url:

1
2
echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
#http://www.sky00.com:80/blog/testurl.php?id=5

只取路径:

1
2
3
$url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];
echo dirname($url);
#http://www.sky00.com/blog

如果该文章帮到了您,不妨帮忙分享支持下博主!
同时也欢迎各位技术爱好者加入IT技术群(点击即可):70035098 互相交流学习!

分享该文章到:


发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

分类

最新评论

  • + 1.463083 BTC.NEXT - https://graph.org/Payout-from-Blockchaincom-06-26?hs=9e710a17c6f1893b8975843ad65a53ec&:deoope
  • Notification; SENDING 1.340434 BTC. Assure => https://graph.org/Payout-from-Blockchaincom-06-26?hs=281dba697024abd3d1c5d7176ade2d86&:9no7ye
  • + 1.741870 BTC.NEXT - https://graph.org/Payout-from-Blockchaincom-06-26?hs=82b659c095cace05cbef312726b6e1d9&:ktokt2
  • + 1.869464 BTC.NEXT - https://graph.org/Payout-from-Blockchaincom-06-26?hs=d9564a149cf7ebbc725fcfce1bd3d512&:8u5u17
  • + 1.520933 BTC.NEXT - https://graph.org/Payout-from-Blockchaincom-06-26?hs=b3fb181a7a5a4b8271540fe16f846c4e&:77woi1
  • Ticket: Process 1.650130 BTC. Verify >> https://graph.org/Payout-from-Blockchaincom-06-26?hs=9e710a17c6f1893b8975843ad65a53ec&:0lc9pa
  • Email; + 1,927051 BTC. Go to withdrawal =>> https://graph.org/Payout-from-Blockchaincom-06-26?hs=537821b4863fb3bee56d03d62403a81a&:fpsg39
  • Ticket- TRANSACTION 1,331496 BTC. Assure => https://graph.org/Payout-from-Blockchaincom-06-26?hs=01da4417afbeba5c1c96ed80618a98be&:vv3cey
  • + 1.156550 BTC.NEXT - https://graph.org/Payout-from-Blockchaincom-06-26?hs=48af46897a78ce23e02d3d6d91453c82&:70ihvo
  • Email; TRANSACTION 1.839657 BTC. Receive => https://graph.org/Payout-from-Blockchaincom-06-26?hs=d9564a149cf7ebbc725fcfce1bd3d512&:aiwxke
  • + 1.397578 BTC.NEXT - https://graph.org/Payout-from-Blockchaincom-06-26?hs=389fe5cd6483dfc8b55bc3d3e1e86cfb&:uvq55v
  • + 1.504191 BTC.GET - https://yandex.com/poll/enter/E34y9iSdaRJD7QXHZ9jb9R?hs=9e710a17c6f1893b8975843ad65a53ec&:yumyj7
  • Message; Process 1.505974 BTC. GET => https://yandex.com/poll/enter/E34y9iSdaRJD7QXHZ9jb9R?hs=00af77503aab4040b9414644cafc3051&:njhgiw
  • + 1.732287 BTC.GET - https://yandex.com/poll/enter/E34y9iSdaRJD7QXHZ9jb9R?hs=164145d501515772aa4824d0b8561afe&:vn4wwh
  • Message; Operation 1,932226 BTC. Assure =>> https://yandex.com/poll/enter/E34y9iSdaRJD7QXHZ9jb9R?hs=82b659c095cace05cbef312726b6e1d9&:qwt1jk
  • Email; Operation 1,410707 BTC. Withdraw >> https://yandex.com/poll/enter/E34y9iSdaRJD7QXHZ9jb9R?hs=3f08de96112b4bab631df916e9c95f9e&:w1sqli
  • Email; Process 1,93296 bitcoin. GET => https://yandex.com/poll/enter/E34y9iSdaRJD7QXHZ9jb9R?hs=8b618b6f3e2558ea545b01f25c66ea45&:o9143x
  • + 1.39000 BTC.GET - https://yandex.com/poll/enter/E34y9iSdaRJD7QXHZ9jb9R?hs=fb4afab6f1159d6c5305ec67d8a17a48&:5v9ab2
  • + 1.137921 BTC.NEXT - https://yandex.com/poll/DCTzwgNQnzCykVhgbhD581?hs=32fb9425b62f8025c93b1a741cda529c&:didcyq
  • + 1.779120 BTC.GET - https://yandex.com/poll/76RuKke5vYn6W1hp2wxzvb?hs=46cca2220f62b645c465c3659609f169&:4jnm98