Rumah > pembangunan bahagian belakang > tutorial php > 详解php pathinfo()函数获取文件的路径、名称等信息

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

怪我咯
Lepaskan: 2023-03-07 21:20:02
asal
4011 orang telah melayarinya

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

PHP pathinfo() 函数

定义和用法

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

pathinfo(path,options)
Salin selepas log masuk
参数描述
path必需。规定要检查的路径。
options可选。规定要返回的数组元素。默认是 all。

可能的值:

  • PATHINFO_DIRNAME - 只返回 dirname

  • PATHINFO_BASENAME - 只返回 basename

  • PATHINFO_EXTENSION - 只返回 extension

提示和注释

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

cgi.fix_pathinfo=1
Salin selepas log masuk

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

实例 1

 <?php
 print_r(pathinfo("/testweb/test.txt"));
 ?>
Salin selepas log masuk


上面的代码将输出:

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));
 ?>
Salin selepas log masuk

上面的代码将输出:
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);
?>
Salin selepas log masuk

代码运行结果:

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
?>
Salin selepas log masuk

代码运行结果:

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
?>
Salin selepas log masuk

代码运行结果:

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
?>
Salin selepas log masuk

代码运行结果:

7.jpg

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

【相关文章推荐】:

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

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

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

Atas ialah kandungan terperinci 详解php pathinfo()函数获取文件的路径、名称等信息. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan