8.10文件路径函数
最后更新于:2022-04-02 00:20:57
我们经常会遇到处理文件路径的情况。
例如:
1. 文件后缀需要取出来
2. 路径需要取出名字不取目录
3. 只需要取出路径名中的目录路径
4. 或者把网址中的各个部份进行解析取得独立值
5. 甚至是自己组成一个url出来
... ....
很多地方都需要用路径处理类的函数。
我们把常用的路径处理函数为大家做了标注,大家对着这个路径处理函数进行处理即可:
| 函数名 | 功能 |
| -- | -- |
| pathinfo | 返回文件的各个组成部分 |
| basename | 返回文件名 |
| dirname | 文件目录部分 |
| parse_url | 网址拆解成各部分 |
| http_build_query | 生成url 中的query字符串 |
| http_build_url | 生成一个url |
##pathinfo
> array pathinfo ( string $路径)
功能:传入文件路径返回文件的各个组成部份
我们用具体的示例来用一下:
~~~
";
echo '文件全名:'.$path_parts['basename']."
"; echo '文件扩展名:'.$path_parts['extension']."
"; echo '不包含扩展的文件名:'.$path_parts['filename']."
"; ?> ~~~ 结果如下: > 文件目录名:d:/www > 文件全名:lib.inc.php > 文件扩展名:php > 不包含扩展的文件名:lib.inc ###basename > string basename ( string $路径[, string $suffix ]) 功能:传入路径返回文件名 第一个参数传入路径。 第二个参数,指定文件名到了指定字符停止。 ~~~ ~~~ 执行结果如下 > 1: index > 2: index.php > 3: passwd ###dirname > dirname(string $路径) 功能:返回文件路径的文件目录部分 ~~~ ~~~ 结论:你可以执行看看是不是返回了文件的目录部分。 ###parse_url > mixed parse_url ( string $路径 ) 功能:将网址拆解成各个部分 ~~~ ~~~ 结果如下: > array(8) { > ["scheme"]=> > string(4) "http" > ["host"]=> > string(8) "hostname" > ["port"]=> > int(9090) > ["user"]=> > string(8) "username" > ["pass"]=> > string(8) "password" > ["path"]=> > string(5) "/path" > ["query"]=> > string(9) "arg=value" > ["fragment"]=> > string(6) "anchor" > } ###http_build_query > string http_build_query ( mixed $需要处理的数据) 功能:生成url 中的query字符串 ~~~ 'liwenkai', 'area'=>'hubei' ]; //生成query内容 echo http_build_query($data); ?> ~~~ 结果如下: > username=liwenkai&area=hubei > http_build_url() 功能: 生成一个url * * * * * 注: PHP_EOL 常量 在 windows平台相当于 echo "\r\n"; 在unix\linux平台相当于 echo "\n"; 在mac平台相当于 echo "\r";
';
"; echo '文件扩展名:'.$path_parts['extension']."
"; echo '不包含扩展的文件名:'.$path_parts['filename']."
"; ?> ~~~ 结果如下: > 文件目录名:d:/www > 文件全名:lib.inc.php > 文件扩展名:php > 不包含扩展的文件名:lib.inc ###basename > string basename ( string $路径[, string $suffix ]) 功能:传入路径返回文件名 第一个参数传入路径。 第二个参数,指定文件名到了指定字符停止。 ~~~ ~~~ 执行结果如下 > 1: index > 2: index.php > 3: passwd ###dirname > dirname(string $路径) 功能:返回文件路径的文件目录部分 ~~~ ~~~ 结论:你可以执行看看是不是返回了文件的目录部分。 ###parse_url > mixed parse_url ( string $路径 ) 功能:将网址拆解成各个部分 ~~~ ~~~ 结果如下: > array(8) { > ["scheme"]=> > string(4) "http" > ["host"]=> > string(8) "hostname" > ["port"]=> > int(9090) > ["user"]=> > string(8) "username" > ["pass"]=> > string(8) "password" > ["path"]=> > string(5) "/path" > ["query"]=> > string(9) "arg=value" > ["fragment"]=> > string(6) "anchor" > } ###http_build_query > string http_build_query ( mixed $需要处理的数据) 功能:生成url 中的query字符串 ~~~ 'liwenkai', 'area'=>'hubei' ]; //生成query内容 echo http_build_query($data); ?> ~~~ 结果如下: > username=liwenkai&area=hubei > http_build_url() 功能: 生成一个url * * * * * 注: PHP_EOL 常量 在 windows平台相当于 echo "\r\n"; 在unix\linux平台相当于 echo "\n"; 在mac平台相当于 echo "\r";