当前位置: 首页> 最新文章列表> pathinfo 返回了什么?PHP 中 pathinfo 返回值结构完整解析

pathinfo 返回了什么?PHP 中 pathinfo 返回值结构完整解析

gitbox 2025-06-09

pathinfo 函数简介

pathinfo 函数用于返回关于给定路径的信息,它接受一个文件路径作为参数,并返回一个包含有关该路径的数组。该数组提供了路径的各个部分,如目录路径、文件名和文件扩展名。

pathinfo 函数的语法

pathinfo(string $path): array
  • $path:输入的路径,可以是文件的绝对路径或相对路径。

该函数返回一个包含以下键的数组:

  • 'dirname':路径的目录部分。

  • 'basename':文件名(包括扩展名)。

  • 'extension':文件的扩展名。

  • 'filename':去掉扩展名后的文件名。


返回值的结构

pathinfo 函数返回一个关联数组,数组包含四个键值对。下面是每个键的详细说明:

1. dirname

  • 含义:文件的目录部分,即文件在系统中的存放路径。

  • 示例
    给定路径 /var/www/html/index.phpdirname 返回 /var/www/html

2. basename

  • 含义:文件的名称部分,包括文件的扩展名。

  • 示例
    给定路径 /var/www/html/index.phpbasename 返回 index.php

3. extension

  • 含义:文件的扩展名,仅包含文件名后缀部分。

  • 示例
    给定路径 /var/www/html/index.phpextension 返回 php

4. filename

  • 含义:文件名部分,不包含扩展名。

  • 示例
    给定路径 /var/www/html/index.phpfilename 返回 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 中的应用

在一些情况下,我们可能需要将 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

适用场景

  1. 文件上传处理:在文件上传时,可以使用 pathinfo 来获取上传文件的文件名、扩展名,从而进行验证或处理。

  2. 路径操作:在处理动态生成的文件路径时,pathinfo 能帮助开发者拆解路径并提取所需部分。

  3. URL 解析:当需要从 URL 中提取文件名或扩展名时,结合 parse_urlpathinfo 可以方便地获得相关信息。