如何用PHP获取干净的网站网址?

时间:2011-10-11 06:23:18

标签: php url

我正在使用$ wsurl作为我的网站清理网址$ wsurl ='http://'。 $ _SERVER ['HTTP_HOST']。 '/';但最近,当我想从网站管理面板回应它时,它给了我结果:

http://localhost/admin/> HTTP://本地主机/页= 166

而不是

http://localhost/?page=166

更详细

我使用的是什么:<a target="_blank" href="><?=$wsurl?>?page=<?=$new_id?>">Link</a>

我得到的是html输出<a target="_blank" href=">localhost/?page=170">Link</a>

但是,当我从管理面板点击它时,它会打开页面localhost/admin>http://localhost/?page=170(而不是http://localhost/?page=170),而该页面根本不存在

如何处理这个问题?

我希望从ws内的任何地方获取网站主要网址。 例如,如果我在管理面板http://localhost/admin/index.php中,$ wsurl将为http://localhost/

如果我的管理面板网址看起来像http://mydomain.com/admin/index.php,则$ w​​surl将为http://mydomain.com/

1 个答案:

答案 0 :(得分:4)

如果您遇到类似的问题,那么您可以试试这个:

$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; 
echo 'http://'.parse_url($url, PHP_URL_HOST) . '/';