怎么用php获取当前的url
-
要使用PHP获取当前的URL,可以使用`$_SERVER[‘REQUEST_URI’]`全局变量。
以下是获取当前URL的示例代码:
“`php
$currentURL = ‘http’;
if (isset($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] == ‘on’) {
$currentURL .= ‘s’;
}
$currentURL .= ‘://’.$_SERVER[‘HTTP_HOST’].$_SERVER[‘REQUEST_URI’];echo $currentURL;
“`上述代码首先判断是否使用HTTPS协议,然后根据`$_SERVER[‘HTTP_HOST’]`获取域名,最后使用`$_SERVER[‘REQUEST_URI’]`获取请求的URI部分,将这些信息拼接起来就可以得到当前的完整URL。
请注意,`$_SERVER[‘REQUEST_URI’]`可能包含查询字符串(例如`?key=value`),如果需要获取不包含查询字符串的URL,可以使用`parse_url()`函数进行处理:
“`php
$parsedURL = parse_url($currentURL);
$currentURL = $parsedURL[‘scheme’].’://’.$parsedURL[‘host’].$parsedURL[‘path’];
“`2年前 -
使用PHP获取当前URL有多种方法,下面是其中的五种常用方法:
1. 使用$_SERVER[‘REQUEST_URI’]:这是PHP内置的一个全局变量,它可以获取当前URL的路径部分。比如,如果当前URL是http://example.com/foo/bar.php,在PHP代码中使用$_SERVER[‘REQUEST_URI’]就可以获取到/foo/bar.php。
2. 使用$_SERVER[‘PHP_SELF’]:这也是一个PHP内置的全局变量,它可以获取当前执行脚本的文件名。与$_SERVER[‘REQUEST_URI’]相比,$_SERVER[‘PHP_SELF’]只返回文件名部分,不包含域名和路径。
3. 使用$_SERVER[‘SCRIPT_NAME’]:这个全局变量也可以获取到当前执行脚本的文件名,与$_SERVER[‘PHP_SELF’]类似。但是,$_SERVER[‘SCRIPT_NAME’]返回的是相对于网站根目录的路径,而不仅仅是文件名。
4. 使用$_SERVER[‘HTTP_HOST’]和$_SERVER[‘HTTPS’]:可以结合使用$_SERVER[‘HTTP_HOST’]和$_SERVER[‘HTTPS’]两个全局变量来获取完整的URL。$_SERVER[‘HTTP_HOST’]返回当前请求的域名,$_SERVER[‘HTTPS’]返回一个非空的值(通常是”on”),表示该请求使用了HTTPS协议。
5. 使用$_SERVER[‘SERVER_NAME’]和$_SERVER[‘REQUEST_URI’]:可以将$_SERVER[‘SERVER_NAME’]和$_SERVER[‘REQUEST_URI’]拼接起来,得到完整的URL。$_SERVER[‘SERVER_NAME’]返回当前服务器的域名,$_SERVER[‘REQUEST_URI’]返回当前请求的路径。
除了上述方法,还可以使用parse_url函数来解析URL,并获取其中的各部分信息。parse_url函数可以将URL解析为一个关联数组,包含有scheme、host、port、user、pass、path、query和fragment等几个元素。通过解析URL,你可以根据自己的需求获取其中的部分信息。
2年前 -
如何使用PHP获取当前URL
PHP是一种服务器端脚本语言,广泛用于Web开发。获取当前URL是Web开发中常见的需求,可以用于生成动态链接、处理表单提交等操作。本文将介绍使用PHP获取当前URL的几种方法。
一、使用$_SERVER[‘REQUEST_URI’]
$_SERVER是一个包含了诸多服务器和执行环境信息的数组,在其中有一个元素名为’REQUEST_URI’,它存储了当前URL的路径和查询字符串部分。
使用$_SERVER[‘REQUEST_URI’]获取当前URL非常简单,只需要在PHP代码中使用该变量即可。
代码示例:
“`php
$current_url = $_SERVER[‘REQUEST_URI’];
echo $current_url;
“`该代码会输出当前URL。
二、使用$_SERVER[‘PHP_SELF’]
$_SERVER[‘PHP_SELF’]存储了当前正在执行的脚本的文件名,其中包含了路径部分。使用$_SERVER[‘PHP_SELF’]获取当前URL的方法如下:
代码示例:
“`php
$current_url = $_SERVER[‘PHP_SELF’];
echo $current_url;
“`该代码会输出当前URL,包含路径部分。
三、使用$_SERVER[‘SCRIPT_NAME’]
$_SERVER[‘SCRIPT_NAME’]也存储了当前正在执行的脚本的文件名,但它并不包含路径部分。
使用$_SERVER[‘SCRIPT_NAME’]获取当前URL的方法如下:
代码示例:
“`php
$current_url = $_SERVER[‘SCRIPT_NAME’];
echo $current_url;
“`该代码会输出当前URL,不包含路径部分。
四、使用$_SERVER[‘HTTP_HOST’]
$_SERVER[‘HTTP_HOST’]存储了当前请求的主机名。使用$_SERVER[‘HTTP_HOST’]获取当前URL的方法如下:
代码示例:
“`php
$current_url = $_SERVER[‘HTTP_HOST’];
echo $current_url;
“`该代码会输出当前URL的主机名部分。
五、使用$_SERVER[‘QUERY_STRING’]
$_SERVER[‘QUERY_STRING’]存储了当前URL的查询字符串部分。使用$_SERVER[‘QUERY_STRING’]获取当前URL的方法如下:
代码示例:
“`php
$current_url = $_SERVER[‘QUERY_STRING’];
echo $current_url;
“`该代码会输出当前URL的查询字符串部分。
六、使用$_SERVER[‘HTTPS’]
$_SERVER[‘HTTPS’]用于判断当前请求是否通过HTTPS协议传输。
使用$_SERVER[‘HTTPS’]获取当前URL的方法如下:
代码示例:
“`php
if (isset($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] === ‘on’) {
$protocol = ‘https://’;
} else {
$protocol = ‘http://’;
}$current_url = $protocol . $_SERVER[‘HTTP_HOST’] . $_SERVER[‘REQUEST_URI’];
echo $current_url;
“`该代码会输出当前完整的URL,包括协议、主机名、路径和查询字符串部分。
总结
本文介绍了使用PHP获取当前URL的几种方法,包括使用$_SERVER[‘REQUEST_URI’]、$_SERVER[‘PHP_SELF’]、$_SERVER[‘SCRIPT_NAME’]、$_SERVER[‘HTTP_HOST’]、$_SERVER[‘QUERY_STRING’]和$_SERVER[‘HTTPS’]。根据实际需求选择合适的方法即可。2年前