> php教程 > php手册 > 用PHP解析JS escape加密过的数据!

用PHP解析JS escape加密过的数据!

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-06-06 19:48:28
원래의
945명이 탐색했습니다.

今天在写程序的时候,发现后台没法解析前台的ajax数据。经过DEBUG,发现ajax发送前夕,数据被使用javascript的escape处理过了。 url = url + n= + vname + v= + escape(val) 如此这般,英文均没有问题,如果是中文,就会出现%uXXXX之类的东西。后面php怎么解

今天在写程序的时候,发现后台没法解析前台的ajax数据。经过DEBUG,发现ajax发送前夕,数据被使用javascript的escape处理过了。

url = url + "&n=" + vname + "&v=" + escape(val)
로그인 후 복사

如此这般,英文均没有问题,如果是中文,就会出现%uXXXX之类的东西。后面php怎么解析呢?加个函数吧:

function js_unescape($str)
{
	$ret = '';
	$len = strlen($str);
	for ($i = 0; $i >6)).chr(0x80|($val&0x3f));
			else $ret .= chr(0xe0|($val>>12)).chr(0x80|(($val>>6)&0x3f)).chr(0x80|($val&0x3f));
			$i += 5;
		} else if ($str[$i] == '%') {
			$ret .= urldecode(substr($str, $i, 3));
			$i += 2;
		} else $ret .= $str[$i];
	}
	return $ret;
}
로그인 후 복사

这样一来,

js_unescape($_GET('v'))就是解析的数据了



원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿