> 백엔드 개발 > PHP 튜토리얼 > 求可以php编码及其对应js端解码的函数,该如何解决

求可以php编码及其对应js端解码的函数,该如何解决

WBOY
풀어 주다: 2016-06-13 11:05:13
원래의
986명이 탐색했습니다.

求可以php编码及其对应js端解码的函数
js解码的函数需要运行在通过a.php生成的b.html中,加密要求不高,但是不要base64


自己改良过,由于php和js编码不同,造成无法还原



http://topic.csdn.net/u/20121026/21/aa481d57-5268-4377-844a-11e0abf9fdd0.html?seed=358554303&r=80007043#r_80007043
------解决方案--------------------
不知是否符合你的需求

<script><br />function compile(code) {      <br />  var c=String.fromCharCode(code.charCodeAt(0)+code.length);<br />  for(var i=1;i<code.length;i++){<br />    c+=String.fromCharCode(code.charCodeAt(i)+code.charCodeAt(i-1));<br />  }<br />  return escape(c);<br />}<br />document.write(compile('ab中cd'));<br /></script><br /><br /><?php<br />echo compile('ab中cd');<br />function compile($code) {<br />  $code = array_values(unpack('n*', iconv(strlen('汉')==2 ? 'gbk' : 'utf-8', 'ucs-2', $code)));<br />  $c[] = $code[0] + count($code);<br />  for($i=1; $i<count($code); $i++){<br />    $c[] = $code[$i] + $code[$i-1];<br />  }<br />  $r = '';<br />  foreach($c as $v) {<br />    if($v < 256) $r .= urlencode(chr($v));<br />    else $r .= '%u' . strtoupper(dechex($v));<br />  }<br />  return $r;<br />}<br />
로그인 후 복사
GBK环境中结果
f%C3%u4E8F%u4E90%C7 f%C3%u4E8F%u4E90%C7

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