php的escape函数问题
在我网上找了很多资料,模拟js的escape函数
都说这个函数很好用,都说可以用的
function escape($str) {
preg_match_all("/[\x80-\xff].|[\x01-\x7f]+/",$str,$r);
$ar = $r[0];
foreach($ar as $k=>$v) {
if(ord($v[0]) < 128)
$ar[$k] = rawurlencode($v);
else
$ar[$k] = "%u".bin2hex(iconv("GB2312","UCS-2",$v));
}
return join("",$ar);
}
怎么我测试不行啊?
if(ord($v[0]) < 128)
这句都出错?我不知什么问题啊
问题点数:20、回复次数:8Top
1 楼mynamesucks(迅雷不及掩耳盗铃之势如破竹)回复于 2006-07-04 15:01:59 得分 5
啥错啊贴一下
另外把你测试用的$str也提供下Top
2 楼yzxlyl(龙心武)回复于 2006-07-04 15:06:37 得分 0
$str="罗那尔多";
错误就是 if(ord($v[0]) < 128)下面的代码没执行了Top
3 楼xuzuning(唠叨)回复于 2006-07-04 15:11:07 得分 9
%u7f57%u90a3%u5c14%u591a
怀疑你的iconv函数不可用Top
4 楼yzxlyl(龙心武)回复于 2006-07-04 15:50:36 得分 0
什么情况下iconv函数不可用啊?Top
5 楼xuzuning(唠叨)回复于 2006-07-04 16:07:41 得分 0
linux下php没有编译进iconv
win32下php4默认不支持iconv
Top
6 楼zeroleonhart(Strong Point:Algorithm)回复于 2006-07-04 19:33:54 得分 3
open php_iconv.dll or iconv.dll extension when you are using php4 or below
Top
7 楼qdsxm()回复于 2006-07-05 09:19:28 得分 3
要先加载iconv模块Top
8 楼yzxlyl(龙心武)回复于 2006-07-05 11:09:32 得分 0
linux下如何加载啊?
不好意思我是php新手Top




