PHP中一個非常實用的函數就是pathinfo,它可以幫助我們解析出文件路徑的各個部分,包括文件名、擴展名、目錄名稱等。
比如,我們有這樣一個文件路徑:/var/www/example.com/public_html/index.php
我們想要獲取該路徑中的文件名、擴展名、目錄名稱,可以這樣使用pathinfo函數:
$path = '/var/www/example.com/public_html/index.php'; $info = pathinfo($path); echo 'basename: ' . $info['basename'] . '可以看到,我們通過pathinfo函數,輕松獲取了文件名、擴展名和目錄名稱。 除此之外,pathinfo函數還可以用來判斷文件路徑的信息。 比如,我們想要判斷一個文件路徑是否是圖片類型,可以這樣寫:
'; // 輸出:basename: index.php echo 'extension: ' . $info['extension'] . '
'; // 輸出:extension: php echo 'dirname: ' . $info['dirname'] . '
'; // 輸出:dirname: /var/www/example.com/public_html
$path = '/var/www/example.com/public_html/images/logo.png'; $info = pathinfo($path); if (in_array(strtolower($info['extension']), ['png', 'jpg', 'jpeg', 'gif'])) { echo '這是一張圖片'; } else { echo '這不是一張圖片'; }通過判斷文件路徑中的擴展名,我們可以輕松判斷該文件路徑是否是一張圖片。 需要注意的是,在使用pathinfo函數時,需要開啟PHP的pathinfo選項。 默認情況下,這個選項是關閉的,我們需要手動開啟,才能使用pathinfo函數。在php.ini配置文件中,我們可以找到這個選項,將其設置為On即可開啟pathinfo。 開啟方法如下:
; ; Pathinfo options ; ; 選項:"0" - 所有pathinfo特性都關閉 ; "1" - 允許PATH_INFO包含文件名 ; "2" - 允許PATH_INFO包含腳本名和文件名 ; "4" - 拒絕以PATH_INFO方式執行腳本 ; "8" - PATH_INFO將以PHP_SELF環境變量的形式改寫 ; "16" - 允許Apache解析多余的PATH_INFO信息并將它發送到環境變量里 ; 該選項是與PHP4.0.3版一起引入的。 ; cgi.fix_pathinfo=1可以看到,在php.ini文件中,我們將cgi.fix_pathinfo設置為1,即可開啟pathinfo選項。 總之,pathinfo是一個非常實用的PHP函數,它可以幫助我們輕松解析文件路徑的信息。只要開啟了PHP的pathinfo選項,我們就可以隨意使用pathinfo函數,進行文件路徑信息的解析和判斷,大大增強了開發效率。
上一篇pattern在php
下一篇pause php