PHP pathinfo()獲得文件的路徑、名稱等信息說明
PHP pathinfo() 函數(shù)
定義和用法
pathinfo() 函數(shù)以數(shù)組或字符串的形式返回關(guān)于文件路徑的信息。
返回的數(shù)組元素如下:
[dirname]:返回文件路徑中的目錄部分
[basename]:返回文件路徑中文件名的部分
[extension]:返回文件路徑中文件的類型的部分
語法
pathinfo(path,options)
參數(shù) | 描述 |
---|---|
path | 必需。規(guī)定要檢查的路徑。 |
options | 可選。規(guī)定要返回的數(shù)組元素。默認是 all。
可能的值:
|
提示和注釋
注釋:如果不是請求所有的元素,則 pathinfo() 函數(shù)返回字符串。
php開啟pathinfo 路由模式:pathinfo 模式 需要 php.ini 開啟下面這個參數(shù)
cgi.fix_pathinfo=1
path_info模式:http://www.xxx.com/index.php/模塊/方法
實例 1
<?php print_r(pathinfo("/testweb/test.txt")); ?>
上面的代碼將輸出:
Array ( [dirname] => /testweb [basename] => test.txt [extension] => txt )
實例 2
<?php var_dump(pathinfo("/testweb/test.txt",PATHINFO_DIRNAME)); var_dump(pathinfo("/testweb/test.txt",PATHINFO_BASENAME)); var_dump(pathinfo("/testweb/test.txt",PATHINFO_EXTENSION)); ?>
上面的代碼將輸出:
string(8)"/testweb"
string(8)"test.txt"
string(3)"txt"
假設(shè)現(xiàn)在有一個圖片文件,它的服務器端路徑為:
$path = "/www/mywebsite/images/myphoto.jpg";
1.pathinfo()函數(shù)
pathinfo()函數(shù)返回的是一個包含了文件信息的數(shù)組,數(shù)組中有四個元素,分別是dirname、basename、extension、filename。打印數(shù)組的代碼:
$fileArr = pathinfo($path);
print_r($fileArr);
//輸出結(jié)果:Array ( [dirname] => /www/mywebsite/images [basename] => myphoto.jpg [extension] => jpg [filename] => myphoto )
這樣我們只需根據(jù)數(shù)組的鍵名就可以獲得對應的鍵值:
echo $fileArr['filename'];
//輸出結(jié)果:myphoto
echo $fileArr['extension'];
//輸出結(jié)果:jpg
//...
2.dirname()函數(shù)
dirname()函數(shù)給出一個包含有指向一個文件的全路徑的字符串,它返回的值去掉文件名后的目錄名,可以認為是對pathinfo()函數(shù)的擴展:
echo dirname($path);
//輸出結(jié)果:/www/mywebsite/images
//或者
echo dirname("/www/mywebsite/images/");
echo dirname("/www/mywebsite/images");
//輸出的結(jié)果都為:/www/mywebsite
所以可以理解為返回的值為路徑的上一層目錄地址名。
3.basename()函數(shù)
basename()函數(shù)給出一個包含有指向一個文件的全路徑的字符串,他返回的值為基本的文件名,同樣可以認為是對pathinfo()函數(shù)的擴展:
echo basename($path);
//輸出結(jié)果:myphoto.jpg
//或者
basename("/www/mywebsite/images/");
//輸出結(jié)果:images
所以可以理解為返回的值為路徑的當前目錄的名稱。
相關(guān)文章
PHP數(shù)組操作匯總 php數(shù)組的使用技巧
對于Web編程來說,最重要的就是存取和讀寫數(shù)據(jù)了。存儲方式可能有很多種,可以是字符串、數(shù)組、文件的形式等。2011-07-07mysql_num_rows VS COUNT 效率問題分析
mysql_num_rows 和 count( * ) 都能統(tǒng)計總數(shù),那個能好一點呢?2011-04-04PHP has encountered a Stack overflow問題解決方法
這篇文章主要介紹了PHP has encountered a Stack overflow問題解決方法,需要的朋友可以參考下2014-11-11php+ajax實現(xiàn)無刷新數(shù)據(jù)分頁的辦法
這篇文章主要介紹了php+ajax實現(xiàn)無刷新分頁的方法,詳細講述了數(shù)據(jù)庫的創(chuàng)建、Ajax文件的實現(xiàn)及PHP調(diào)用方法,需要的朋友可以參考下2015-11-11