我知道$_SERVER["REQUEST_URI"];
可以用来获取当前页面的 url,但是如果 URL 是 htaccess URL 重写,这不起作用。
如何获取当前 php 文件的真实(未重写)文件名?
例如我去http://site.com/page/它重写并显示http://site.com/page.php
$_SERVER["REQUEST_URI"];
只会给我重写,我想要原版。
我知道$_SERVER["REQUEST_URI"];
可以用来获取当前页面的 url,但是如果 URL 是 htaccess URL 重写,这不起作用。
如何获取当前 php 文件的真实(未重写)文件名?
例如我去http://site.com/page/它重写并显示http://site.com/page.php
$_SERVER["REQUEST_URI"];
只会给我重写,我想要原版。
您可以使用 php 常量__FILE__
,如下所示:
echo __FILE__;
您可以使用$_SERVER['SCRIPT_NAME']
.
您可以使用$_SERVER['PHP_SELF']
获取当前脚本或__FILE__
获取当前文件。区别在于包含的文件。如果文件 A.php 包含文件 B.php,则在文件 B.php$_SERVER['PHP_SELF']
中将包含 A.php,因为它是调用脚本,并且__FILE__
具有调用该行的确切文件,即 B.php。前任:
A.php:
<?php
include("B.php");
B.php:
<?php
echo '__FILE__ has: '.__FILE__.'<br />'; //shows B.php
echo '$_SERVER["PHP_SELF"] has: '.$_SERVER['PHP_SELF'].'<br />'; //shows A.php