2011-11-14 244 views
5

在PHP中,有沒有獲得上傳到服務器的文件名的方法?我使用了$_FILES['file']['name'],但它也返回了擴展名。沒有擴展名的文件名

+2

可能重複[ PHP獲取文件名沒有文件擴展名](http://stackoverflow.com/questions/2183486/php-get-file-name-without-file-extension) – CodeCaster

+0

哇,你得到5個單獨的答案/方法,都做同樣的事情!快樂的時光! – fire

+0

感謝大家對他們的迴應...讓它跑起來! – chetan

回答

25
$filename = pathinfo($_FILES['file']['name'], PATHINFO_FILENAME); 

pathinfo是因爲4.0.3核心PHP函數,並在5.2中加入PATHINFO_FILENAME選項。

 
$filenameOnly = array_pop(array_reverse(explode(".", $yourfilename))); 

希望幫助

2

使用PHP basename()功能。

string basename (string $path [, string $suffix ]) 
1

是的,你可以做到這一點

preg_replace('/(.*)\\.[^\\.]*/', '$1', $filename); 
1
preg_replace('^(.*)\..+?$', $_FILES['file']['name']);