php中如何将URL的汉字部分转为字母或数字? 对于包含汉字的URL,目前我是用urlencode处理,但是发现太长了,而且%xx的形式很难看……如何将汉字转为只有字母或数字?类似smarter。com。cn那样,搜“小米手机”,url转换成了“nakbmdnhmkngllpk”。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 他可能还觉得长....5bCP57Gz5omL5py6把常用的关键词做一个映射表,自己用自己的算法传递参数从映射表里取完整的 我是觉得不够好:-)1、base64_encode()出来是大小写相混的,用于URL不太好,我希望它是全小写的。2、直接用它的话会把英文和数字也加密了。 哈哈,还是给我搜索到了这篇。http://topic.csdn.net/u/20090323/12/33afe038-8725-4084-ac0a-a6a1c4e24c57.html,同一个问题。问题是对于数字和字母不加密还是不会处理:-( 这是将内码以半字节为单位转换成字符的过程echo $t = encode('小米手机'); //nakbmdnhmkngllpkecho PHP_EOL;echo decode($t); //小米手机echo PHP_EOL;function encode($s) { $offs = ord('a'); $s = current(unpack('H*', $s)); $r = ''; for($i=0; $i<strlen($s); $i++) $r .= chr(hexdec($s{$i}) + $offs); return $r;}function decode($s) { $offs = ord('a'); $r = ''; for($i=0; $i<strlen($s); $i++) $r .= dechex(ord($s{$i}) - $offs); return pack('H*', $r);}如果不对数字和字母处理,则需要先明确汉字的编码类型,否则冗余的代码太多不利于提高效率 以前我也是这么认为的,所以才保留了汉字的形式。现在发现这样并不好:首先,不同的浏览器有些传值是utf-8而有些不是。其次,URL上的汉字即使能提升页面的相关度,对搜索引擎友好,作用也是微乎其微。但是这种形式的URL大大妨碍了搜索引擎的抓取和收录(特指百度)。我同样的一个网站,全英文的URL收录远高于包含汉字的URL,大致是80/20,可网站的两种URL数量却是相反。 霍霍,你这比我昨晚找到的那贴子的代码还要简洁。汉字编码倒是好明确,用gb2312比utf-8要短。能说说数字和字母怎么分离处理呢? Call to undefined function getInstance()怎么回事 echo 和 print有不同吗? php6的配置文件 谁能帮我在15天之内上手用PHP做项目.急!!! 求一个调用com读取excel的类 php用户邮箱密码重置问题 PHP+MYSQL能不能这样来应用? 关于采集页面放入数据库问题 好难受的问题,无法上传文件!!!! 如何去掉字符串中的换行符? 成绩怎么求出来? 高手进来说下思路 很简单的问题,就是不知道为什么?
他可能还觉得长....5bCP57Gz5omL5py6
把常用的关键词做一个映射表,自己用自己的算法传递参数从映射表里取完整的
我是觉得不够好:-)1、base64_encode()出来是大小写相混的,用于URL不太好,我希望它是全小写的。
2、直接用它的话会把英文和数字也加密了。
echo $t = encode('小米手机'); //nakbmdnhmkngllpk
echo PHP_EOL;
echo decode($t); //小米手机
echo PHP_EOL;function encode($s) {
$offs = ord('a');
$s = current(unpack('H*', $s));
$r = '';
for($i=0; $i<strlen($s); $i++)
$r .= chr(hexdec($s{$i}) + $offs);
return $r;
}function decode($s) {
$offs = ord('a');
$r = '';
for($i=0; $i<strlen($s); $i++)
$r .= dechex(ord($s{$i}) - $offs);
return pack('H*', $r);
}如果不对数字和字母处理,则需要先明确汉字的编码类型,否则冗余的代码太多不利于提高效率
以前我也是这么认为的,所以才保留了汉字的形式。现在发现这样并不好:首先,不同的浏览器有些传值是utf-8而有些不是。其次,URL上的汉字即使能提升页面的相关度,对搜索引擎友好,作用也是微乎其微。但是这种形式的URL大大妨碍了搜索引擎的抓取和收录(特指百度)。我同样的一个网站,全英文的URL收录远高于包含汉字的URL,大致是80/20,可网站的两种URL数量却是相反。
霍霍,你这比我昨晚找到的那贴子的代码还要简洁。汉字编码倒是好明确,用gb2312比utf-8要短。能说说数字和字母怎么分离处理呢?