$path = "/www/mywebsite/images/myphoto.jpg";
1.pathinfo()函数
pathinfo()函数返回的是一个包含了文件信息的数组,数组中有四个元素,分别是dirname、basename、extension、filename。打印数组的代码:
复制代码代码如下:
$fileArr = pathinfo($path);
print_r($fileArr);
//输出结果:Array ( [dirname] => /www/mywebsite/images [basename] => myphoto.jpg [extension] => jpg [filename] => myphoto )
print_r($fileArr);
//输出结果:Array ( [dirname] => /www/mywebsite/images [basename] => myphoto.jpg [extension] => jpg [filename] => myphoto )
这样我们只需根据数组的键名就可以获得对应的键值:
复制代码代码如下:
echo $fileArr['filename'];
//输出结果:myphoto
echo $fileArr['extension'];
//输出结果:jpg
//...
//输出结果:myphoto
echo $fileArr['extension'];
//输出结果:jpg
//...
2.dirname()函数
dirname()函数给出一个包含有指向一个文件的全路径的字符串,它返回的值去掉文件名后的目录名,可以认为是对pathinfo()函数的扩展:
复制代码代码如下:
echo dirname($path);
//输出结果:/www/mywebsite/images
//或者
echo dirname("/www/mywebsite/images/");
echo dirname("/www/mywebsite/images");
//输出的结果都为:/www/mywebsite
//输出结果:/www/mywebsite/images
//或者
echo dirname("/www/mywebsite/images/");
echo dirname("/www/mywebsite/images");
//输出的结果都为:/www/mywebsite
所以可以理解为返回的值为路径的上一层目录地址名。
3.basename()函数
basename()函数给出一个包含有指向一个文件的全路径的字符串,他返回的值为基本的文件名,同样可以认为是对pathinfo()函数的扩展:
复制代码代码如下:
echo basename($path);
//输出结果:myphoto.jpg
//或者
basename("/www/mywebsite/images/");
//输出结果:images
//输出结果:myphoto.jpg
//或者
basename("/www/mywebsite/images/");
//输出结果:images
所以可以理解为返回的值为路径的当前目录的名称。