pathinfo函數用於返回關於給定路徑的信息,它接受一個文件路徑作為參數,並返回一個包含有關該路徑的數組。該數組提供了路徑的各個部分,如目錄路徑、文件名和文件擴展名。
pathinfo(string $path): array
$path :輸入的路徑,可以是文件的絕對路徑或相對路徑。
該函數返回一個包含以下鍵的數組:
'dirname' :路徑的目錄部分。
'basename' :文件名(包括擴展名)。
'extension' :文件的擴展名。
'filename' :去掉擴展名後的文件名。
pathinfo函數返回一個關聯數組,數組包含四個鍵值對。下面是每個鍵的詳細說明:
含義:文件的目錄部分,即文件在系統中的存放路徑。
示例:
給定路徑/var/www/html/index.php , dirname返回/var/www/html 。
含義:文件的名稱部分,包括文件的擴展名。
示例:
給定路徑/var/www/html/index.php , basename返回index.php 。
含義:文件的擴展名,僅包含文件名後綴部分。
示例:
給定路徑/var/www/html/index.php , extension返回php 。
含義:文件名部分,不包含擴展名。
示例:
給定路徑/var/www/html/index.php , filename返回index 。
<?php
$filePath = '/var/www/html/index.php';
// 獲取路徑信息
$pathInfo = pathinfo($filePath);
// 輸出結果
echo '目錄路徑: ' . $pathInfo['dirname'] . PHP_EOL;
echo '文件名: ' . $pathInfo['basename'] . PHP_EOL;
echo '擴展名: ' . $pathInfo['extension'] . PHP_EOL;
echo '文件名(不含擴展名): ' . $pathInfo['filename'] . PHP_EOL;
?>
輸出:
目錄路徑: /var/www/html
文件名: index.php
擴展名: php
文件名(不含擴展名): index
在一些情況下,我們可能需要將URL 路徑傳遞給pathinfo函數來解析URL 中的文件名或擴展名。請注意, pathinfo只能解析文件路徑,因此我們需要在使用時將URL 中的路徑部分提取出來。
例如,假設你有如下URL:
$url = "https://www.gitbox.net/images/logo.png";
$parsedUrl = parse_url($url);
$pathInfo = pathinfo($parsedUrl['path']);
// 輸出結果
echo '文件名: ' . $pathInfo['basename'] . PHP_EOL;
echo '擴展名: ' . $pathInfo['extension'] . PHP_EOL;
輸出:
文件名: logo.png
擴展名: png
文件上傳處理:在文件上傳時,可以使用pathinfo來獲取上傳文件的文件名、擴展名,從而進行驗證或處理。
路徑操作:在處理動態生成的文件路徑時, pathinfo能幫助開發者拆解路徑並提取所需部分。
URL 解析:當需要從URL 中提取文件名或擴展名時,結合parse_url和pathinfo可以方便地獲得相關信息。