// 尽可能高效从一个标准url中获取文件的扩展名
// 例如 http://www.daiyuanpei.com/dai.html.php?id=1 取出 .php 或者 php
$url = 'http://www.daiyuanpei.com/dai.html.php?id=1';
// php
function getExt($url){
$arr = parse_url($url); // parse_url解析一个 URL 并返回一个关联数组,包含在 URL 中出现的各种组成部分
/* var_dump($arr);die;
* array(4) {
["scheme"]=>
string(4) "http"
["host"]=>
string(18) "www.daiyuanpei.com"
["path"]=>
string(13) "/dai.html.php"
["query"]=>
string(4) "id=1"
}
* */
$file = basename($arr['path']);
$ext = explode('.', $file);
return $ext[count($ext)-1];
}
// php方式二
function getExt2($url) {
$url = basename($url);
$pos1 = strpos($url, '.');
$pos2 = strpos($url, '?');
if(strstr($url, '?')){
return substr($url, $pos1+1, $pos2-$pos1-1);
}else{
return substr($url, $pos1);
}
}