php获取路径、目录或文件名称,我们经常会使用到dirname()、basename()、pathinfo()这三个函数,本文章向大家详细介绍这三个函数的区别以及使用实例,需要的朋友可以参考一下。
dirname()函数
string dirname ( string $path )
php dirname函数获取给定文件路径中的目录部分,参数$path是一个文件路径的字符串
dirname()函数经常与魔术变量__FILE__一起使用,魔术变量__FILE__表示当前运行文件的完整路径和文件名。
dirname(dirname(__FILE__));得到的是文件上一层目录名
dirname(__FILE__);得到的是文件所在层目录名
如:
";echo dirname("/testweb/home.php")."";echo __FILE__ ."";echo dirname(__FILE__)."";echo dirname(dirname(__FILE__));?>
运行结果为:
c:/testweb/testwebE:\wamp\www\test.phpE:\wamp\wwwE:\wamp
basename()函数
string basename ( string $path [, string $suffix ] )
php basename()函数获取路径中的文件名部分,该函数与dirname()正好相反(dirname获取路径中的目录部分)。
第一个参数$path表示一个包含有指向一个文件的全路径的字符串,第二个参数表示如果文件名是以suffix结束的,那这一部分也会被去掉。
实例如下:运行结果:
string(7) "sudoers"string(6) "passwd"string(3) "etc"string(1) "."string(0) ""
pathinfo()函数
php pathinfo函数用于解析路径,将路径解析为一个数组,数组包括目录名、完整的文件名、文件扩展名和文件名(不包括文件后缀)四个值,并且这四个值的键名分别为dirname、basename、extension和filename,我们可以通过这四个键名来获取目录名、完整的文件名、文件扩展名和文件名的值。
语法:
mixed pathinfo ( string $path [, int $options = PATHINFO_DIRNAME | PATHINFO_BASENAME | PATHINFO_EXTENSION | PATHINFO_FILENAME ] )
参数:
- path 要解析的路径。
- options 如果指定了,将会返回指定元素;它们包括:PATHINFO_DIRNAME,PATHINFO_BASENAME 和 PATHINFO_EXTENSION 或 PATHINFO_FILENAME。 如果没有指定 options 默认是返回全部的单元。
实例:
结果如下
Array([dirname] => http://localhost //url的路径[basename] => index.php //完整文件名[extension] => php //文件名后缀[filename] => index //文件名)