文件路徑:$path = '/home/files/1234.jpg';
php獲取文件名,大家應該是輕車熟路了,寫個小函數,分分鍾
1 <?php 2 //獲取文件名 3 function get_fileName($file_path){ 4 //1、先獲取帶文件部分 5 $file_base_name = basename($file_path); 6 //2、拆分為數組,獲取即可 7 $file_name_arr = explode('.',$file_base_name); 8 $f_name = $file_name_arr[0]; 9 return $f_name; 10 } 11 12 ?>
調用函數 echo get_fileName($path);// 輸出 1234
仔細一看,沒毛病啊,這有什么問題嗎?接下來就是見證奇跡的時候了
現在來了一個新的文件路徑 /home/upload/abc.123.test.zip
再次調用函數,結果輸出了abc
這。。。
現在知道問題之所在了吧!
好了 萬全做法如下
1 <?php 2 //獲取文件名 3 function get_fileName($file_path){ 4 //1、先獲取帶文件部分 5 $file_base_name = basename($file_path); 6 //2、查找截取即可 7 $f_name = substr($file_base_name,0,strrpos($file_base_name,'.')); 8 return $f_name; 9 } 10 ?>