登录  /  注册

详解php pathinfo()函数获取文件的路径、名称等信息

怪我咯
发布: 2017-06-02 13:38:49
原创
3690人浏览过

在php中,可以通过函数获得一个文件的路径、名称,或者是扩展名等,是非常容易的一件事。可以使用我们前面所讲的php pathinfo()函数或者可以使用php dirname()函数,php basename()函数等多种途径获得相应的信息。

PHP pathinfo() 函数

定义和用法

pathinfo() 函数以数组或字符串的形式返回关于文件路径的信息。
返回的数组元素如下:
[dirname]:返回文件路径中的目录部分
[basename]:返回文件路径中文件名的部分
[extension]:返回文件路径中文件的类型的部分
语法

pathinfo(path,options)
登录后复制
参数描述
path必需。规定要检查的路径。
options可选。规定要返回的数组元素。默认是 all。

可能的值:

  • PATHINFO_DIRNAME - 只返回 dirname

  • PATHINFO_BASENAME - 只返回 basename

  • PATHINFO_EXTENSION - 只返回 extension

提示和注释

注释:如果不是请求所有的元素,则 pathinfo() 函数返回字符串。
php开启pathinfo 路由模式:pathinfo 模式 需要 php.ini 开启下面这个参数

cgi.fix_pathinfo=1
登录后复制

path_info模式:h t t p://www.xxx.com/index.php/ 模块/方法

实例 1

 <?php
 print_r(pathinfo("/testweb/test.txt"));
 ?>
登录后复制

上面的代码将输出:

1.jpg

实例 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));
 ?>
登录后复制

上面的代码将输出:
4.jpg

假设现在有一个图片文件,它的服务器端路径为:

$path = "/www/mywebsite/images/myphoto.jpg";

1.pathinfo()函数
pathinfo()函数返回的是一个包含了文件信息的数组,数组中有四个元素,分别是dirname、basename、extension、filename。打印数组的代码:

代码如下:

<?php
$path = "/www/mywebsite/images/myphoto.jpg";
$fileArr = pathinfo($path);
print_r($fileArr);
?>
登录后复制

代码运行结果:

3.jpg

这样我们只需根据数组的键名就可以获得对应的键值:
代码如下:

<?php
$path = "/www/mywebsite/images/myphoto.jpg";
$fileArr = pathinfo($path);
echo $fileArr[&#39;filename&#39;]."<br/>";
//输出结果:myphoto
echo $fileArr[&#39;extension&#39;];
//输出结果:jpg
?>
登录后复制

代码运行结果:

5.jpg

2.dirname()函数
dirname()函数给出一个包含有指向一个文件的全路径的字符串,它返回的值去掉文件名后的目录名,可以认为是对pathinfo()函数的扩展:

代码如下:

<?php
$path = "/www/mywebsite/images/myphoto.jpg";
$fileArr = pathinfo($path);
echo dirname($path)."<br/>";
//输出结果:/www/mywebsite/images
//或者
echo dirname("/www/mywebsite/images/")."<br/>";
echo dirname("/www/mywebsite/images");
//输出的结果都为:/www/mywebsite
?>
登录后复制

代码运行结果:

0.jpg

所以可以理解为返回的值为路径的上一层目录地址名。

3.basename()函数

basename()函数给出一个包含有指向一个文件的全路径的字符串,他返回的值为基本的文件名,同样可以认为是对pathinfo()函数的扩展:

代码如下:

<?php
$path = "/www/mywebsite/images/myphoto.jpg";
$fileArr = pathinfo($path);
echo basename($path)."<br/>";
//输出结果:myphoto.jpg
//或者
echo basename("/www/mywebsite/images/");
//输出结果:images
?>
登录后复制

代码运行结果:

7.jpg

所以可以理解为返回的值为路径的当前目录的名称。

【相关文章推荐】:

1 . 详解php pathinfo()函数获取文件路径信息

2. 详解php dirname()函数获取文件信息用法

3 . 详解php basename()函数获取文件名的用法

以上就是详解php pathinfo()函数获取文件的路径、名称等信息的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号