<?php header('Content-Type:text/html;charset=utf-8'); function encode_file_contents($filename) { $type=strtolower(substr(strrchr($filename,'.'),1)); if('php'==$type && is_file($filename) && is_writable($filename)){// 如果是PHP文件 并且可写 则进行压缩编码 $contents = file_get_contents($filename);// 判断文件是否已经被编码处理 $pos = strpos($contents,'powered by arzn QQ:1314778'); if(false === $pos || $pos>100){ // 去除PHP文件注释和空白,减少文件大小 $contents = php_strip_whitespace($filename); // 去除PHP头部和尾部标识 $headerPos = strpos($contents,'<?php'); $footerPos = strrpos($contents,'?>'); $contents = substr($contents,$headerPos+5,$footerPos-$headerPos); $encode = base64_encode(gzdeflate($contents));// 开始编码 $encode = '<?php'." eval(gzinflate(base64_decode("."'".$encode."'"."))); ?>"; return file_put_contents($filename,$encode); } } return false; } //调用函数 $filename='1.php'; encode_file_contents($filename); echo "OK,加密完成!" ?>
以上是加密代码
下面是解密代码
<?php $Code = '这里填写要解密的编码'; // base64编码 $File = 'decoded.php';//解码后保存的文件 $Temp = base64_decode($Code); $temp = gzinflate($Temp); $FP = fopen($File,"w"); fwrite($FP,$temp); fclose($FP); echo "解密成功!"; ?>