小编典典

如何使用PHP获取基本URL?

php

我在WindowsVista上使用XAMPP。在我的发展中,我有http://127.0.0.1/test_website/

如何http://127.0.0.1/test_website/使用PHP?

我尝试了类似的方法,但是没有一个起作用。

echo dirname(__FILE__)
or
echo basename(__FILE__);
etc.

阅读 287

收藏
2020-05-26

共1个答案

小编典典

尝试这个:

<?php echo "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']; ?>

了解有关$_SERVER预定义变量的更多信息。

如果计划使用https,则可以使用以下命令:

function url(){
  return sprintf(
    "%s://%s%s",
    isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off' ? 'https' : 'http',
    $_SERVER['SERVER_NAME'],
    $_SERVER['REQUEST_URI']
  );
}

echo url();
#=> http://127.0.0.1/foo






<VirtualHost *>
    ServerName example.com
    UseCanonicalName on
</VirtualHost>

注意
:如果您依赖于HTTP_HOST键(包含用户输入),则仍必须进行一些清理,删除空格,逗号,回车符等。所有对于域无效的字符。查看PHP内置的parse_url函数以获取示例。

2020-05-26