Php 使用URL参数获取当前文件名

Php 使用URL参数获取当前文件名,php,filenames,Php,Filenames,假设用户正在加载以下页面:www.example.com/myDirectory/myPage.php?回答=yes 我想用PHP从中获取myPage.PHP?答案=yes。但是,basename($\u SERVER['PHP\u SELF'])只返回myPage.PHP。我该怎么做?您可以将查询字符串作为一个: 如果需要考虑没有查询字符串的可能性,请添加条件测试: $myurl = strlen($_SERVER['QUERY_STRING']) ? basename($_SERVER['P

假设用户正在加载以下页面:
www.example.com/myDirectory/myPage.php?回答=yes


我想用PHP从中获取
myPage.PHP?答案=yes
。但是,
basename($\u SERVER['PHP\u SELF'])
只返回
myPage.PHP
。我该怎么做?

您可以将查询字符串作为一个:

如果需要考虑没有查询字符串的可能性,请添加条件测试:

$myurl = strlen($_SERVER['QUERY_STRING']) ? basename($_SERVER['PHP_SELF'])."?".$_SERVER['QUERY_STRING'] : basename($_SERVER['PHP_SELF']);
将为您提供参数

更简单吗

basename($_SERVER['REQUEST_URI'])

对于带有尾部参数的URL,以下内容将当前URL的第一部分(即之前的部分?)放在变量$current_URL[0]中,然后将其打印出来

<?
$current_url = explode("?", $_SERVER['REQUEST_URI']);
echo $current_url[0] ;
?>


PHP parse_url()将返回域、文件和get变量的数组。这将返回
/myDirectory/myPage.phpanswer=yes
。我想要
myPage.php?answer=yes
@Mooseman您可以在
/
上爆炸,并获得结果数组中的最后一个元素。唯一的问题是,如果没有参数,我们仍然有
。干<代码>$myurl=basename($\u服务器['PHP\u SELF'])。(strlen($\u服务器['QUERY\u STRING'])?“?”。$\u服务器['QUERY\u STRING']:”)我不知道;告诉我!
basename($_SERVER['REQUEST_URI'])
<?
$current_url = explode("?", $_SERVER['REQUEST_URI']);
echo $current_url[0] ;
?>