javascript的fromCharCode与php的相应解码方法

来源:互联网 发布:粗集料坚固性试验数据 编辑:程序博客网 时间:2024/06/07 17:07
公司的OA里有一小程序,每天去读取alexa的Traffic Rank等数据,但发现最近无法获取,于是打开数据来源的页面,果然是改版了,查看源码,
发现想提取的数据变成一堆这样的东东:
 
<SCRIPT>
document.write(String.fromCharCode
(34+16,40+20,56+27,54+26,65+32,74+36,42+20,40+20,32+15,56+27,54+26,65+32,74+36,42+20,30+14,40+20,56+27,54+26,65+32,52+26,
42+20,40+20,32+15,56+27,54+26,65+32,52+26,42+20,33+16,38+19,40+20,56+27,75+37,65+32,74+36,42+20,40+20,32+15,56+27,75+37,6
5+32,74+36,42+20,37+18))
</SCRIPT>

细看之下,发现要还原为正常的数据并不难,步骤如下:
 
1)用正则提取出需要的部分,即String.fromCharCode()里的参数
2)explode切入数组
 
  $code = explode(",",$str);

3)循环该数组,进行解码处理

  $re = '';
  foreach($code as $v){
    eval("\$s = $v;");
    $re.= chr($s);
  }
 
经处理后,$re就是所需的数据,当然,这里还需要去除HTML TAG的操作..
0 0