首頁 >後端開發 >php教程 >如何使用PHP取得不含副檔名的檔名? (程式碼範例)

如何使用PHP取得不含副檔名的檔名? (程式碼範例)

青灯夜游
青灯夜游原創
2019-02-21 11:25:004601瀏覽

如何取得不含副檔名的檔案名稱?以下這篇文章就跟大家介紹使用PHP從檔案名稱中刪除副檔名,傳回不含副檔名的檔名的方法,希望對大家有幫助。 【影片教學推薦:PHP教學

如何使用PHP取得不含副檔名的檔名? (程式碼範例)

#方法一:使用內建函數pathinfo()

#方法一:使用內建函數pathinfo()

pathinfo()函數會以陣列的形式傳回檔案路徑的訊息,包含:dirname、basename、extension、filename。

基本語法:

pathinfo(path,options)

參數path:表示要檢查的路徑。

參數options:可省略,表示要傳回的陣列元素,預設值為all。可以有以下的值:

 ● PATHINFO_DIRNAME: 只傳回目錄名稱(dirname)。

 ● PATHINFO_BASENAME:傳回完整的檔案名稱(basename),即有副檔名的檔案名稱。

 ● PATHINFO_EXTENSION: 只傳回副檔名(extension)

 ● PATHINFO_FILENAME: 傳回不含副檔名的檔案名稱(filename)。

程式碼範例:

<?php 
// 用文件名初始化变量
$file = &#39;demo.html&#39;; 
// 仅提取文件名
$x = pathinfo($file, PATHINFO_FILENAME); 
// 输出
echo $x; 
?>

輸出:

demo
註:如果檔案名稱包含完整路徑,也只回傳不帶有擴展名的檔案名稱。

方法二:使用內建函數basename()

#basename()函數傳迴路徑中的檔案名稱部分,即不含副檔名的檔名;該函數用於以string的形式傳回path的尾隨名稱元件。

基本語法:

basename(path,suffix)
參數path:表示要檢查的路徑。

參數suffix:可省略,表示檔案副檔名。如果不省略suffix參數,則輸出不含副檔名的檔名。

程式碼範例:

<?php 
$file = &#39;demo/filename.txt&#39;; 
$x = basename($file, &#39;.txt&#39;); 
echo $x; 
?>
#輸出:
filename

方法三:使用使用substr()和strrpos()函數

substr()函數用來傳回字串的一部分,而strrpos()會找出字串中最後一次出現的子字串的位置。

程式碼範例:

<?php 
$file = &#39;PHP.pdf&#39;; 
$x = substr($file, 0, strrpos($file, &#39;.&#39;)); 
echo $x; 
?>

輸出:

PHP

註:如果檔案名稱包含完整路徑,則傳回不含副檔名的完整路徑和文件名。 ######範例:如果$file = 'demo/PHP.pdf', 則回傳:###
demo/PHP
###以上就是本篇文章的全部內容,希望能對大家的學習有所幫助。更多精彩內容大家可以追蹤php中文網相關教學欄位! ! ! ###

以上是如何使用PHP取得不含副檔名的檔名? (程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn