在之前的文章中我們介紹了使用PHP實(shí)現(xiàn)給定年月日計(jì)算總天數(shù)的方法,感興趣的可以點(diǎn)擊鏈接進(jìn)行查閱→《怎么通過(guò)PHP實(shí)現(xiàn)給定年月日計(jì)算總天數(shù)》。這次我們來(lái)介紹一下如何使用PHP獲取文件的擴(kuò)展名,有需要的朋友可以學(xué)習(xí)了解一下~
我們有這樣一個(gè)文件url:
dir/upload/image.jpg
怎么將文件的擴(kuò)展名 .jpg
或者 jpg
輸出呢?實(shí)現(xiàn)思想:
一個(gè)完整的文件的格式為:文件名.擴(kuò)展名
。因此,我們可以根據(jù)字符“.
”來(lái)將文件url分成三個(gè)部分:字符“.”之前的內(nèi)容、字符“.”、字符“.”之后的內(nèi)容。我們只需要獲取 字符“.”之后的內(nèi)容 即可。
下面我們來(lái)介紹2種利用數(shù)組來(lái)獲取文件擴(kuò)展名的方法。
首先我們來(lái)看看第一種獲取文件擴(kuò)展名的方法。
<?php function getExtension($filename) { $arr = explode('.',$filename); return array_pop($arr); } $filename="dir/upload/image.jpg"; echo getExtension($filename); ?>
輸出結(jié)果:
OK!下面分析一下上面的代碼:
首先使用explode('.',$filename)根據(jù)分割符“.”來(lái)分割$filename字符串,并將子串傳入數(shù)組。我們使用var_dump($arr)
輸出這個(gè)數(shù)組看看:
可以看出有兩個(gè)元素,末尾的數(shù)組元素就是需要獲取的擴(kuò)展名。
這樣我們直接使用內(nèi)置函數(shù)array_pop($arr)
來(lái)獲取$arr
數(shù)組最后一個(gè)元素即可需要獲取的擴(kuò)展名。輸出array_pop($arr),看看結(jié)果:
echo array_pop($arr);
接下來(lái)我們看看第二種獲取文件擴(kuò)展名的方法。
<?php function getExtension($filename){ $arr = pathinfo($filename); $ext = $arr['extension']; return $ext; } $filename="dir/upload/image.jpg"; echo getExtension($filename); ?>
輸出結(jié)果:
OK!也可以獲取擴(kuò)展名,下面分析一下上面的代碼:
pathinfo($filename)
可以以數(shù)組的形式返回關(guān)于文件路徑的信息,該函數(shù)返回的數(shù)組元素有:
-
[dirname]
:目錄路徑 -
[basename]
:文件名 -
[extension]
:文件后綴名 -
[filename]
:不包含后綴的文件名
我們使用var_dump($arr)
輸出這個(gè)數(shù)組,看看結(jié)果:
可以看出鍵名為“extension
”的數(shù)組元素的鍵值就是我們需要獲取的文件擴(kuò)展名“jpg
”。這樣我們可以直接使用$arr['extension']
來(lái)訪問(wèn)鍵名為“extension”的數(shù)組元素,就可以獲取文件的擴(kuò)展名。
好了就說(shuō)到這里了,有其他想知道的,可以點(diǎn)擊這個(gè)哦。→ →php視頻教程
最后給大家推薦一個(gè)PHP數(shù)組的免費(fèi)視頻教程:PHP函數(shù)之a(chǎn)rray數(shù)組函數(shù)視頻講解,快來(lái)學(xué)習(xí)吧!