1、PHP源码加密
<?php
namespace app\api\controller;
class Encodefile
{
public 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); // 判断文件是否已经被编码处理
$contents = php_strip_whitespace($filename);
// 去除PHP头部和尾部标识
$headerPos = strpos($contents,'<?php');
//echo $headerPos.'<br>';
$contents = substr($contents,$headerPos+5);
$encode = base64_encode(gzdeflate($contents)); // 开始编码
$encode = '<?php'."\n eval(gzinflate(base64_decode("."'".$encode."'".")));\n\n?>";
return file_put_contents($filename, $encode);
}
return false;
}
public function index()
{
//echo $_SERVER['DOCUMENT_ROOT'];// /Applications/phpstudy/WWW/fastadmin/public
//echo dirname(__FILE__);// /Applications/phpstudy/WWW/fastadmin/application/api/controller
//$filename = '根目录下绝对路径.php';
$filename = dirname(__FILE__).'/Order.php';
$a=$this->encode_file_contents($filename);
if($a){
echo "OK,加密完成!";
}else{
echo "No,加密失败!";
}
}
}