php獲取文件的文件名(誤區)


文件路徑:$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 ?>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM