如何使用php获取网页URL

时间:2013-11-26 18:02:23

标签: php html

我有一个php脚本网页让我们说abc.php @ ['localhost / abc.php'] 在abc.php我使用了这个

<?php
echo $link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
?>

我将此页面包含在另一个php网页中,例如xyz.php @ [localhost / 123 / xyz.php]  但是当我加载xyz.php网页时,我得到了这个输出

http://localhost/abc.php

虽然我想让我的xyz.php网页给我输出

http://localhost/123/xyz.php

或者,如果xyz.php页面中的任何GET请求都是这样的

http://localhost/123/xyz.php?q=searchthis

我尝试了很多东西,但无法解决这个问题

1 个答案:

答案 0 :(得分:1)

尝试以下方法:

$uri = $_SERVER['REQUEST_URI'];

这将为您提供所请求的目录和文件名。如果您使用mod_rewrite,这非常有用,因为它会告诉您用户正在查看的页面。

如果您需要实际的文件名,可能需要尝试$_SERVER['PHP_SELF'],魔术常量__FILE__$_SERVER['SCRIPT_FILENAME']。后面的2为您提供了完整的路径(来自服务器的根目录),而不仅仅是您网站的根目录。它们对包含等有用。

$_SERVER['PHP_SELF']为您提供相对于网站根目录的文件名。

 $relative_path = $_SERVER['PHP_SELF'];
 $complete_path = __FILE__;
 $complete_path = $_SERVER['SCRIPT_FILENAME'];