PHP使用pathinfo和parse_url函数获取url里文件的扩展名

PHP 投稿 50100 0 评论

PHP使用pathinfo和parse_url函数获取url里文件的扩展名

PHP 获取 url 地址中文件的扩展名代码示例:

$url = 'http://www.feishuai.vip/webmap.html?id=1&data=2#laowen';
echo pathinfo( parse_url($url)['path'] )['extension'];
echo pathinfo( parse_url( $url, PHP_URL_PATH ), PATHINFO_EXTENSION );

解析:

parse_url() 该函数解析url、返回其组成部分,结果是一个关联数组如下:

scheme      方案;如 http
host        域名
port        端口
user        用户
pass    
path        路径
query       在问号?之后
fragment    在散列符号#之后

eg: print_r( $url );

Array( 
  [scheme] = >http 
  [host] => www.feishuai.vip 
  [path] => /webmap.html 
  [query] => id=1&data=2 
  [fragment] => laowen 
)

扩展:

var_dump( pathinfo($path) );//打印解析路径
var_dump( pathinfo($path, PATHINFO_DIRNAME) );//打印路径的父级路径
var_dump( pathinfo($path, PATHINFO_BASENAME) );//打印路径的尾名
var_dump( pathinfo($path, PATHINFO_EXTENSION) );//打印路径的最后的扩展名
var_dump( pathinfo($path, PATHINFO_FILENAME) );//打印路径的文件的名字

扩展:

var_dump(parse_url($url));//打印解析url
var_dump(parse_url($url, PHP_URL_SCHEME));//打印url的scheme
var_dump(parse_url($url, PHP_URL_USER));//打印url的user
var_dump(parse_url($url, PHP_URL_PASS));//打印url的pass
var_dump(parse_url($url, PHP_URL_HOST));//打印url的host
var_dump(parse_url($url, PHP_URL_PORT));//打印url的port
var_dump(parse_url($url, PHP_URL_PATH));//打印url的path
var_dump(parse_url($url, PHP_URL_QUERY));//打印url的query
var_dump(parse_url($url, PHP_URL_FRAGMENT));//打印url的fragment

pathinfo()解析文件路径,返回其组成部分,结果是一个关联数组,如下:

dirname       文件路径
basename      文件名+扩展名
extension     最后一个扩展名
filename      文件名

eg: print_r( pathinfo('/ab/cd/e.php') );

Array(
  [dirname] => /ab/cd
  [basename] => e.php
  [extension] => php
  [filename] => e
)

编程笔记 » PHP使用pathinfo和parse_url函数获取url里文件的扩展名

赞同 (52) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽