php怎么获得当前页面的url
-
要获得当前页面的URL,可以使用PHP中的`$_SERVER`全局变量。
`$_SERVER[‘PHP_SELF’]`返回当前脚本的文件名,包括路径信息。
`$_SERVER[‘SERVER_NAME’]`返回当前运行脚本所在的服务器主机名。
`$_SERVER[‘SERVER_PORT’]`返回服务器正在使用的端口。
`$_SERVER[‘REQUEST_URI’]`返回URL的路径部分。
通过结合这些变量,可以获得当前页面的完整URL。下面是一个示例代码:
“`php
$protocol = isset($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] === ‘on’ ? “https” : “http”;
$host = $_SERVER[‘SERVER_NAME’];
$port = $_SERVER[‘SERVER_PORT’];
$path = $_SERVER[‘REQUEST_URI’];$currentUrl = $protocol . “://” . $host . ($port != 80 && $port != 443 ? “:” . $port : “”) . $path;
echo “当前页面的URL是:” . $currentUrl;
“`通过以上代码,就可以获得当前页面的URL。注意,如果网站使用了SSL证书,即通过HTTPS连接,需要根据`$_SERVER[‘HTTPS’]`来确定协议类型。而使用`$_SERVER[‘SERVER_PORT’]`可以避免在默认端口(80或443)时显示冗余的端口信息。最后通过拼接各个部分就可以形成完整的URL。
希望以上内容对您有帮助!
2年前 -
在PHP中,您可以使用`$_SERVER[‘REQUEST_URI’]`来获得当前页面的URL。下面是一些关于如何获取当前页面的URL的常见方法:
1. 使用`$_SERVER[‘REQUEST_URI’]`:
“`php
$url = $_SERVER[‘REQUEST_URI’];
echo $url;
“`
这将返回当前URL的路径和查询字符串,例如`/example.php?param1=value1¶m2=value2`。2. 使用`$_SERVER[‘PHP_SELF’]`和`$_SERVER[‘QUERY_STRING’]`:
“`php
$url = $_SERVER[‘PHP_SELF’] . ‘?’ . $_SERVER[‘QUERY_STRING’];
echo $url;
“`
这将返回当前URL的路径和查询字符串,例如`/example.php?param1=value1¶m2=value2`。3. 使用`$_SERVER[‘HTTP_HOST’]`和`$_SERVER[‘REQUEST_URI’]`:
“`php
$url = ‘http://’ . $_SERVER[‘HTTP_HOST’] . $_SERVER[‘REQUEST_URI’];
echo $url;
“`
这将返回完整的URL,包括协议和域名,例如`http://example.com/example.php?param1=value1¶m2=value2`。4. 使用`$_SERVER[‘HTTPS’]`来检查是否使用了HTTPS协议,然后将其与上述方法中的合并:
“`php
$protocol = ($_SERVER[‘HTTPS’] && $_SERVER[‘HTTPS’] != “off”) ? “https” : “http”;
$url = $protocol . ‘://’ . $_SERVER[‘HTTP_HOST’] . $_SERVER[‘REQUEST_URI’];
echo $url;
“`
这将返回完整的URL,包括协议和域名,并且如果使用了HTTPS协议,URL将以`https://`开头。5. 使用`$_SERVER[‘SCRIPT_NAME’]`和`$_SERVER[‘QUERY_STRING’]`:
“`php
$url = $_SERVER[‘SCRIPT_NAME’] . ‘?’ . $_SERVER[‘QUERY_STRING’];
echo $url;
“`
这将返回当前脚本的路径和查询字符串,例如`/example.php?param1=value1¶m2=value2`。通过上述方法之一,您可以获取当前页面的URL。根据您的需求,选择最适合您的方法。
2年前 -
在PHP中,可以通过 `$_SERVER` 超全局变量来获取当前页面的URL。具体的操作步骤如下:
1. 使用 `$_SERVER[‘PHP_SELF’]`
可以使用 `$_SERVER[‘PHP_SELF’]` 获取当前页面的文件路径,不包含域名和协议部分。例如,如果当前页面的 URL 是 `http://example.com/test.php`,那么 `$_SERVER[‘PHP_SELF’]` 将返回 `/test.php`。2. 使用 `$_SERVER[‘REQUEST_URI’]`
可以使用 `$_SERVER[‘REQUEST_URI’]` 来获取包含域名和端口的完整 URL。例如,如果当前页面的 URL 是 `http://example.com/test.php?param=value`,那么 `$_SERVER[‘REQUEST_URI’]` 将返回 `/test.php?param=value`。3. 使用 `$_SERVER[‘HTTP_HOST’]`
可以使用 `$_SERVER[‘HTTP_HOST’]` 来获取当前页面的域名和端口信息。例如,如果当前页面的 URL 是 `http://example.com/test.php`,那么 `$_SERVER[‘HTTP_HOST’]` 将返回 `example.com`。4. 使用 `$_SERVER[‘HTTPS’]`
可以使用 `$_SERVER[‘HTTPS’]` 来判断当前页面是否通过 HTTPS 协议来访问。如果 `$_SERVER[‘HTTPS’]` 的值为 `’on’`,则表示通过 HTTPS 访问;如果值为空,则表示通过 HTTP 访问。综合使用以上变量,可以拼接出完整的 URL。下面是一个示例代码,可以根据需求来更改和使用:
“`php
$protocol = isset($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] === ‘on’ ? “https” : “http”;
$hostname = $_SERVER[‘HTTP_HOST’];
$uri = $_SERVER[‘REQUEST_URI’];$current_url = $protocol . “://” . $hostname . $uri;
echo $current_url;
“`以上代码会将当前页面的完整 URL 打印出来。
需要注意的是,`$_SERVER` 变量会根据服务器的配置和环境有所不同,因此在使用时需要做好兼容性处理,并根据具体的需求选择合适的变量来获取当前页面的URL。
2年前