以下是获取当前运行页面的完整URL的几个步骤:
- 创建一个PHP变量, 它将以字符串格式存储URL。
- 检查服务器是否启用了HTTPS。如果已启用, 则在URL字符串后附加" https"。如果未启用HTTPS, 则在URL字符串后附加" http"。
- 在网址后附加常规符号, 即"://"。
- 附加服务器的HTTP_HOST(我们请求的主机, 例如www.google.com, www.yourdomain.com等)。
- 将REQUEST_URI(我们请求的资源, 例如/index.php等)附加到URL字符串。
注意:使用isset()函数检查是否启用了HTTPS。 isset()函数用于检查变量是否存在。
HTTPS的状态保存在全局变量$ _SERVER [‘HTTPS’]中。因此, 在isset()函数中使用$ _SERVER [‘HTTPS’]用于检查它是否存在。这将告诉我们是否启用了HTTPS。检查$ _SERVER ['HTTPS']的值。如果它是" on", 则启用HTTPS, 我们必须在URL后面附加" https"。
程序1:
<?php
// Program to display URL of current page.
if (isset( $_SERVER [ 'HTTPS' ]) && $_SERVER [ 'HTTPS' ] === 'on' )
$link = "https" ;
else
$link = "http" ;
// Here append the common URL characters.
$link .= "://" ;
// Append the host(domain name, ip) to the URL.
$link .= $_SERVER [ 'HTTP_HOST' ];
// Append the requested resource location to the URL
$link .= $_SERVER [ 'REQUEST_URI' ];
// Print the link
echo $link ;
?>
输出如下:
https://ide.lsbin.org/
程式2:
<?php
// Program to display current page URL.
$link = (isset( $_SERVER [ 'HTTPS' ]) && $_SERVER [ 'HTTPS' ] === 'on' ?
"https" : "http" ) . "://" . $_SERVER [ 'HTTP_HOST' ] .
$_SERVER [ 'REQUEST_URI' ];
echo $link ;
?>
输出如下:
https://ide.lsbin.org/
上面代码的输出是https://ide.lsbin.org/, 而不是https://ide.lsbin.org/index.php。为了解决此问题, 需要将$ _SERVER ['REQUEST_URI']替换为$ _SERVER ['PHP_SELF']
程式3:显示当前正在执行的PHP文件URL
<?php
// Program to display complete URL
if (isset( $_SERVER [ 'HTTPS' ]) &&
$_SERVER [ 'HTTPS' ] === 'on' )
$link = "https" ;
else
$link = "http" ;
// Here append the common URL
// characters.
$link .= "://" ;
// Append the host(domain name, // ip) to the URL.
$link .= $_SERVER [ 'HTTP_HOST' ];
// Append the requested resource
// location to the URL
$link .= $_SERVER [ 'PHP_SELF' ];
// Display the link
echo $link ;
?>
输出如下:
https://ide.lsbin.org/index.php
计划4:
<?php
// Program to display complete URL
$link = (isset( $_SERVER [ 'HTTPS' ]) && $_SERVER [ 'HTTPS' ]
=== 'on' ? "https" : "http" ) . "://" .
$_SERVER [ 'HTTP_HOST' ] . $_SERVER [ 'PHP_SELF' ];
// Display the complete URL
echo $link ;
?>
输出如下:
https://ide.lsbin.org/index.php