PHP获取没有参数的文件名

时间:2014-12-29 16:22:36

标签: php

我有这些网址

something2/something3/fileName.php

something2/something3/fileName.php?para=someting&param2=something2

我想获得fileName没有.php扩展且没有参数,

注意:并非所有网址都有参数。

我尝试过:

$phpFileName = basename($_SERVER['REQUEST_URI'], ".php");//without .php extension

只有当网址中没有参数时才有效,但是当网址中有参数时,我就是这样的:

fileName.php?parm=something&param=something

如何删除这些参数并获取fileName

感谢

2 个答案:

答案 0 :(得分:2)

如果代码在文件本身中,您可以使用...

$phpFileName = basename(__FILE__, ".php");

__FILE__是正在执行的当前文件的魔术常量。

否则只需先使用explode删除查询字符串...

$qs = explode("?", $_SERVER['REQUEST_URI']);
$phpFileName = basename($qs[0], ".php");

答案 1 :(得分:2)

首先使用parse_url

从网址获取路径
$phpFileName = basename(parse_url($_SERVER['REQUEST_URI'], PHP_PATH), ".php");

您还可以查看pathinfo