从标准URL中获取后缀名的两种方式

 如何从下面的标准URL中获取后缀名,要求尽量高效: php

http://www.baidu.com/index.php?id=1234&a=qwer

用PHP来实现,主要有两个函数能够提供解决方案。 html

一、pathinfo()函数,实现代码以下: 函数

$url = 'http://www.baidu.com/index.php?id=1234&a=qwer';

$array = pathinfo($url);
$extension = $array['extension'];
$position = strpos($extension, '?');
$result = $position === false ? $extension : substr($extension, 0, $position);

获得的结果是:php url

二、parse_url()函数,实现代码以下: code

$url = 'http://www.baidu.com/index.php?id=1234&a=qwer';

$array = parse_url($url);
$path = $array['path'];
$result = substr($path, strpos($path, '.'));

获得的结果是:.php htm

两种方式原理都是相同的:解析URL + 字符串截取 字符串

相关文章
相关标签/搜索