php实现字符转URL实现代码
发布:smiling 来源: PHP粉丝网 添加日期:2014-09-12 14:29:14 浏览: 评论:0
在php中函数自带了一个url转换字符或字符转换在url字符的方法,但是今天我也看到了一个朋友写的一个例子,下面我就把它现官方的函数整理一起.
英文,代码如下:
- function tourl($str) {
- $str = preg_replace('/[^a-zA-Z0-9]+/', '-', $str);
- $str = trim($str, '-');
- return strtolower($str);
- }
包含特殊字符,代码如下:
- function strtourl($str) {
- $str = htmlentities($str, ENT_QUOTES, "UTF-8");
- $str = preg_replace('/&([a-z]{1,2})(?:acute|lig|grave|ring|tilde|uml|cedil|caron);/i','1',$str);
- $str = html_entity_decode($str, ENT_QUOTES, "UTF-8");
- $str = preg_replace('/[^a-z0-9]+/i', '-', $str);
- return strtolower($str);
- }
urlencode函数,此函数可以解决百度get与google get中文乱码问题,代码如下:
- header('Content-type: text/html; charset=utf-8');
- echo '<br />百度关键词URL编码转换示例:<br />';
- $urlBaidu = 'http://www.baidu.com/s?wd=%D6%D0%CE%C4';
- $arrParse = parse_url($urlBaidu);
- parse_str($arrParse ['query'],$output);
- echo '乱码:' . $output['wd'] . '<br />';
- //将gb2312编码转换成utf-8编码
- $strUTF8 = mb_convert_encoding($output['wd'], 'utf-8', 'gb2312');
- echo '可读码:' . $strUTF8 . '<br />';
- echo '<br />谷歌关键词URL编码转换示例:<br />';
- $urlGoogle = 'http://www.google.cn/search?hl=zh-CN&source=hp&q=%E4%B8%AD%E6%96%87&aq=f&oq=';
- $arrParse = parse_url($urlGoogle);
- //开源代码phpfensi.com
- parse_str($arrParse ['query'],$output);
- //谷歌关键词URL编码是utf-8,不用再作转换
- echo '可读码:' . $output['q'] . '<br />';
总结:个人更喜欢使用php自带urlencode()函数,上面这个也是解决我们url用中文时百度与gg有时会乱码问题解决方案了.
Tags: php字符转URL php转URL
相关文章
- ·php字符转URL地址的函数(2014-09-22)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)