Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用PHP获取脚本的当前URL?_Php_Url - Fatal编程技术网

如何使用PHP获取脚本的当前URL?

如何使用PHP获取脚本的当前URL?,php,url,Php,Url,如何使用PHP获取脚本的当前URL?请参阅: 有时它并不是那么简单 正如人们可能认为的那样 在应用程序中使用它的url。 下面是我用来获取的一个片段 当前URL,并在 剧本当前url(是否为http) 或https)现在是一个局部变量 你可以随心所欲 注意:在使用任何敏感值(如sql查询)之前,应该整理此值 当您需要这样的信息时,通常可以方便地查看phpinfo()的输出,然后阅读那些看起来不错的项目的文档 请记住,其中一些在服务器上可能是正确的,但在其他服务器上可能略有不同。。取决于操作系统、

如何使用PHP获取脚本的当前URL?

请参阅:

有时它并不是那么简单 正如人们可能认为的那样 在应用程序中使用它的url。 下面是我用来获取的一个片段 当前URL,并在 剧本当前url(是否为http) 或https)现在是一个局部变量 你可以随心所欲

注意:在使用任何敏感值(如sql查询)之前,应该整理此值


当您需要这样的信息时,通常可以方便地查看phpinfo()的输出,然后阅读那些看起来不错的项目的文档


请记住,其中一些在服务器上可能是正确的,但在其他服务器上可能略有不同。。取决于操作系统、http服务器等。

假设您正在访问



然后 echo$_服务器['SERVER_NAME'];//这将返回u主机名,即:-

stackoverflow.com/

及 echo$_服务器['REQUEST_URI'];//它将只返回当前url中的文件名
将在下面返回

“/questions/1871770/how-do-i-get-the-current-url-of-my-script-using-php”

,而不是主机名。

如果您想知道服务器上的脚本名称,那么..

$file = $_SERVER["SCRIPT_NAME"];
echo $file;

$\u SERVER[“SCRIPT\u NAME”]将为您提供当前执行的脚本路径,该路径与您的服务器相关,而不是与浏览器的url相关。

对于www.example.com/files/SCRIPT.php

$\u服务器['SCRIPT\u NAME']
=/files/script.php

如果需要当前目录url:


dirname($\u SERVER['SCRIPT\u NAME'])
=/files您好,这是您问题的解决方案

//通过此方法获取页面url

$url=$_SERVER['REQUEST_URI'];
echo "$url<br />";
$fullurl="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo $fullurl;

对PHP_SELF将只返回文件。。。而不是其他参数。。如果需要完整路径,那么他必须使用“REQUEST_URI”,我已经编辑了我的答案。更不用说PHP_SELF易受XSS攻击。服务器端口丢失。如果使用rewrite在脚本之后添加变量,如/x.PHP/123/456,那么使用REQUEST_URI将包括这些参数。脚本名称可能更好。链接已断开。。。
$host=$_SERVER['HTTP_HOST'];
echo "$host<br />";
$fullurl="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo $fullurl;