标题:
PHP操作JS的escpae函数
[打印本页]
作者:
Nothing
时间:
2007-12-24 13:15
标题:
PHP操作JS的escpae函数
<
?
function
phpescape
(
$
str
)
{
$
sublen
=
strlen
(
$
str
)
;
$
retrunString
=
""
;
for
(
$
i
=
0
;
$
i
<
$
sublen
;
$
i
+
+
)
{
if
(
ord
(
$
str
[
$
i
]
)
>
=
127
)
{
//$tmpString=bin2hex(iconv("gb2312","ucs-2",substr($str,$i,2)));
//$tmpString=substr($tmpString,2,2).substr($tmpString,0,2);window下可能要打开此项
$
retrunString
.
=
"%u"
.
$
tmpString
;
$
i
+
+
;
}
else
{
$
retrunString
.
=
"%"
.
dechex
(
ord
(
$
str
[
$
i
]
)
)
;
}
}
return
$
retrunString
;
}
function
unescape
(
$
str
)
{
$
str
=
rawurldecode
(
$
str
)
;
preg_match_all
(
"/%u.{4}|.{4};|&#\d+;|.+/U"
,
$
str
,
$
r
)
;
$
ar
=
$
r
[
0
]
;
foreach
(
$
ar
as
$
k
=
>
$
v
)
{
if
(
substr
(
$
v
,
0
,
2
)
=
=
"%u"
)
$
ar
[
$
k
]
=
iconv
(
"UCS-2"
,
"GBK"
,
pack
(
"H4"
,
substr
(
$
v
,
-
4
)
)
)
;
elseif
(
substr
(
$
v
,
0
,
3
)
=
=
""
)
$
ar
[
$
k
]
=
iconv
(
"UCS-2"
,
"GBK"
,
pack
(
"H4"
,
substr
(
$
v
,
3
,
-
1
)
)
)
;
elseif
(
substr
(
$
v
,
0
,
2
)
=
=
"&#"
)
{
$
ar
[
$
k
]
=
iconv
(
"UCS-2"
,
"GBK"
,
pack
(
"n"
,
substr
(
$
v
,
2
,
-
1
)
)
)
;
}
}
return
join
(
""
,
$
ar
)
;
}
?
>
欢迎光临 编程开发论坛 (http://bbs.lihuasoft.net/)
Powered by Discuz! 6.0.0