📅  最后修改于: 2023-12-03 15:33:36.724000             🧑  作者: Mango
当我们在编写 PHP 程序时,有时需要获取当前文件所在的父 URL,以便进行后续操作,比如重定向、跳转等。
本文将介绍如何使用 PHP 获取当前脚本所在的父 URL,以及相关注意事项。
获取父 URL 的方式有很多,这里介绍两种常见的方式。
$_SERVER['HTTP_REFERER']
获取使用 $_SERVER['HTTP_REFERER']
可以获取当前页面的来源 URL,包含了父 URL 的信息。
<?php
$parentUrl = $_SERVER['HTTP_REFERER'];
echo $parentUrl;
?>
但是需要注意的是,$_SERVER['HTTP_REFERER']
并不是一个可靠的值,因为这个值可以被经过修改的浏览器插件或者网络代理所篡改,因此不能完全依赖这种方式来获取父 URL。
$_SERVER['REQUEST_URI']
和 $_SERVER['HTTP_HOST']
拼接获取另外一种方式是通过拼接 $_SERVER['REQUEST_URI']
和 $_SERVER['HTTP_HOST']
来获取父 URL。
<?php
$parentUrl = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
echo $parentUrl;
?>
这种方式相比于前一种方式更可靠,但是需要注意的是,若脚本文件被 include 到其他文件中,则该方法获取的父 URL 可能会不准确,需要谨慎使用。
本文介绍了两种获取 PHP 脚本文件父 URL 的方式,其中 $_SERVER['HTTP_REFERER']
方式虽然简单,但是要判断其可靠性,而通过 $_SERVER['REQUEST_URI']
和 $_SERVER['HTTP_HOST']
拼接方式更可靠,但是需要注意与 include 相关的问题。根据实际需求选择合适的方式来获取父 URL。