2010-01-09 119 views
1

我找你的帮助,请隐藏文件扩展名是自

我用简单的PHP代码,如:

$file = $_SERVER["SCRIPT_NAME"]; 
//echo $file; 
$break = Explode('/', $file); 
$pfile = $break[count($break) - 1]; 
echo $pfile; 

比输出$ PFILE例如fileforme.php

但我要的是$ PFILE的输出fileforme

成了,因为我想用它来:

$txt['fl']= $pfile ; 

怎么办?或者还有其他更好的方法?

回答

3

您可以使用pathinfo()及其PATHINFO_FILENAME标志(仅适用于PHP 5.2 +) 例如

$file = $_SERVER["SCRIPT_NAME"]; 
echo 'file: ', $file, "\n"; 
echo 'PATHINFO_FILENAME: ', pathinfo($file, PATHINFO_FILENAME); 

打印(我的机器上)

file: C:\Dokumente und Einstellungen\Volker\Desktop\test.php 
PATHINFO_FILENAME: test 
+0

是啊...谢谢你的亲切,GBU – jones 2010-01-09 14:35:11

3

basename的PHP手册:

$path = "/home/httpd/html/index.php"; 
$file = basename($path);   // $file is set to "index.php" 
$file = basename($path, ".php"); // $file is set to "index" 

或使用pathinfo,如果你不知道分机:

$path_parts = pathinfo('/www/htdocs/index.html'); 
echo $path_parts['dirname'], "\n"; 
echo $path_parts['basename'], "\n"; 
echo $path_parts['extension'], "\n"; 
echo $path_parts['filename'], "\n"; // since PHP 5.2.0 
+0

ahh ...你给我很好的提示,谢谢.. – jones 2010-01-09 14:34:08

2

基本上你正在寻找不带扩展名的文件名:

$filename = basename($_SERVER["SCRIPT_NAME"], ".php"); 

注意,这个答案是具体的PHP扩展。

+0

谢谢兄弟,我想这个好东西.. – jones 2010-01-09 14:36:30

1
$pfile_info = pathinfo($pfile); 
$ext = $pfile_info['extension']; 

查看pathinfo()了解更多信息。

+0

还你...谢谢你... – jones 2010-01-09 14:39:05