以下为引用的内容:
<?php //使用Snoopy的抓页功能 include "Snoopy.class.php"; //目标URL $url = $_REQUEST['targeturl']; //将所有传递过来的参数列出来 $par = array(); $GetPost = array_merge($_POST,$_GET); foreach($GetPost As $Key=>$Value){ if($Key!='targeturl'){ $Value = str_replace("%25","%",$Value); array_push($par,($Key . "=" . $Value)); } } //判断目标URL是否带有?(即是否带有参数) $cc = strpos($url,"?") ? "&" : "?"; //重组URL $geturl = !$par ? $url : $url.$cc.implode("&",$par); //抓取重组后的URL页面内容 $snoopy = new Snoopy; $snoopy->fetch($geturl); //替换目标内容中脚本里有可能替换父窗口地址的代码 $org = str_replace("top.location","top.title",$snoopy->results); //尝试转换目标内容编码到UTF-8 $opt = iconv("gbk","utf-8",$org); //判断目标内容编码为GBK或UTF-8 $ec = strlen($opt)?"gbk":"utf-8";
?> <script type="text/javascript"> //封闭运行,避免与后面内容中脚本混乱 (function(){ var easyUTF8 = function(gbk){if(!gbk){return '';}var utf8 = [];for(var i=0;i<gbk.length;i++){var s_str = gbk.charAt(i);if(!(/^%u/i.test(escape(s_str)))){utf8.push(s_str);continue;}var s_char = gbk.charCodeAt(i);var b_char = s_char.toString(2).split('');var c_char = (b_char.length==15)?[0].concat(b_char):b_char;var a_b =[];a_b[0] = '1110'+c_char.splice(0,4).join('');a_b[1] = '10'+c_char.splice(0,6).join('');a_b[2] = '10'+c_char.splice(0,6).join('');for(var n=0;n<a_b.length;n++){utf8.push('%'+parseInt(a_b[n],2).toString(16).toUpperCase());}}return utf8.join('');}; var getArgs = function(surl){var sarg = surl.split('?'),rv={};rv.filename=sarg[0];if(!sarg[1]){return rv;}var aarg=sarg[1].split('&'),atmp=[];for(var i=0;i<aarg.length;i++){atmp=aarg[i].split('=');rv[atmp[0]]=atmp[1];}return rv;};
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
|