Dav*_*dom 17

// Get HTTP/HTTPS (the possible values for this vary from server to server)
$myUrl = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] && !in_array(strtolower($_SERVER['HTTPS']),array('off','no'))) ? 'https' : 'http';
// Get domain portion
$myUrl .= '://'.$_SERVER['HTTP_HOST'];
// Get path to script
$myUrl .= $_SERVER['REQUEST_URI'];
// Add path info, if any
if (!empty($_SERVER['PATH_INFO'])) $myUrl .= $_SERVER['PATH_INFO'];
// Add query string, if any (some servers include a ?, some don't)
if (!empty($_SERVER['QUERY_STRING'])) $myUrl .= '?'.ltrim($_SERVER['REQUEST_URI'],'?');

echo $myUrl;
Run Code Online (Sandbox Code Playgroud)

......对我来说,这是我最有弹性的例子.


Ian*_*son 6

您可能想尝试:

echo '<pre>';
print_r($_SERVER);
echo '</pre>';
Run Code Online (Sandbox Code Playgroud)

结合$_SERVER['HTTP_HOST']和/ $_SERVER['SCRIPT_NAME']$_SERVER['PHP_SELF']应该是你正在寻找的.


Tak*_*Tak 5

你需要自己建造它;

echo $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
Run Code Online (Sandbox Code Playgroud)

您还可以使用它$_SERVER['HTTPS']来检测HTTP或HTTPS.

我推荐使用,$_SERVER['REQUEST_URI']因为这正是用户正在寻找的,在任何重写或其他任何内容之前,并包括GET变量