PHP获取文件后缀的7中方法
在日常的工作当中我们避免不了要经常获取文件的后缀名,今天我就整理了一下7种获取文件后缀的方法,希望对大家有所帮助。
$url = 'http://www.baidu.com/uploads/20185425.jpg'; get_ext1($url); function get_ext1($url=''){ $url = parse_url($url); $name = strrchr($url['path'],'.'); p(strtolower(substr($name,1))); } get_ext2($url); function get_ext2($url=''){ $num = strrpos($url,'.'); $name = substr($url,$num+1); p(strtolower($name)); } get_ext3($url); function get_ext3($url=''){ $url = explode('/',$url); $file = $url[count($url)-1]; $name = strstr($file,'.'); p(strtolower(substr($name,1))); } get_ext4($url); //explode和array_pop函数 function get_ext4($url=''){ $url = explode('.',$url); p(array_pop($url)); } get_ext5($url); //pathinfo函数 function get_ext5($url=''){ $url = pathinfo($url,PATHINFO_EXTENSION); p($url); } get_ext6($url); //正则表达式 function get_ext6($url=''){ $pattern = '#(.jpg|gif|png|jpeg|xls)#'; if (preg_match($pattern,$url,$math)){ p($math[0]); } } get_ext7($url); //正则反向引用 function get_ext7($url=''){ $pattern = '#.*?(\.[jpg|jpeg|gif|png])#'; $match = preg_replace($pattern,'\\1',$url); p(substr($match,1)); } function p($data){ echo '<pre>'; print_r($data); echo '</pre>'; }