DDR爱好者之家 Design By 杰米
一个简单的图片加解密函数,使用client跑,不要使用浏览器跑
话不多说,直接上代码
<"en") img_enconde($arr['path'], $arr['is_copy'], $arr['salt']);
//type为de就解密
if($arr['type'] == "de") img_deconde($arr['path'], $arr['is_copy'], $arr['salt']);
function parse_parameter($argv)
{
$arr = array();
//获取参数
for($len=count($argv)-1; $len--; )
{
list($key, $val) = explode('=', $argv[$len]);
$arr[$key] = $val;
}
return $arr;
}
//图片加密函数
//路径文件夹
//是否为复制(默认不复制)
//盐(默认为salt)
function img_enconde($path, $is_copy = 0, $salt = 'salt')
{
$time1 = microtime(1);
$handle = opendir($path);
if(!$salt) $salt = 'salt';
if($handle)
{
echo "路径:" . $path . "\r\n\r\n";
//在指定文件夹下创建临时文件夹
$temp_dir = $path . '\\' . 'temp';
@mkdir($temp_dir, 0777, 1);
while ($file = readdir($handle))
{
$time2 = microtime(1);
//构造当前文件绝对地址
$dir_path = $path . '\\' . $file;
//获取文件后缀
$suffix = strrchr($file, '.');
//图片后缀
$fix = array('.jpg', '.gif', '.bmp', '.png', '.jpeg', '.JPG', '.GIF', '.BMP', '.PNG', 'JPEG');
if(is_file($dir_path) && in_array($suffix, $fix))
{
//打开当前文件
$fh = fopen($dir_path, 'r');
//打开文件为流
$stream = fread($fh, filesize($dir_path));
//输出
file_put_contents($temp_dir . '\\' . uniqid('',1), $file . '!' . $salt . '@' . $stream);
//关闭句柄
fclose($fh);
//是否为复制
//1为复制,0为删除(默认)
if(!$is_copy)
{
echo "加密并删除 : " . $dir_path . "\r\n";
@unlink($dir_path);
}
else
{
echo "加密 : " . $dir_path . "\r\n";
}
$time3 = microtime(1);
echo "此图用时 ", ($time3 - $time2), " S\r\n", "已经用时 ", ($time3 - $time1), " S\r\n\r\n";
}
}
echo "加密完成\r\n";
}
else
{
echo "path invalid ";
return false;
}
}
//图片解密函数
//路径文件夹
//是否为复制(默认不复制)
//盐(默认为salt)加密写什么,这里就写什么
function img_deconde($path, $is_copy = 0, $salt = '')
{
$time1 = microtime(1);
$handle = opendir($path);
if($handle)
{
echo "路径:" . $path . "\r\n\r\n";
if(!$salt) $salt = 'salt';
//在指定文件夹下创建临时文件夹
$temp_dir = $path . '\\' . 'temp';
@mkdir($temp_dir, 0777, 1);
//核心正则
$reg = "#^(.+" . $salt . ")@#im";
$res = array();
$count = 0;
while ($file = readdir($handle))
{
$time2 = microtime(1);
//构造当前文件绝对地址
$file_path = $path . '\\' . $file;
if(is_file($file_path))
{
//文件句柄
$hf = fopen($file_path, 'r');
//返回流
$stream = fread($hf, filesize($file_path));
fclose($hf);
//匹配加的密码
if(preg_match_all($reg, $stream, $res))
{
$count++;
//清空盐
$stream = str_replace($res[0][0], '', $stream);
//输出文件
file_put_contents($temp_dir . '\\' . $res[1][0], $stream);
//是否为复制
//1为复制,0为删除(默认)
if(!$is_copy)
{
echo "成功解密删除 : " . $temp_dir . '\\' . $res[1][0] . "\r\n";
@unlink($file_path);
}
else
{
echo "解密 : " . $temp_dir . '\\' . $res[1][0] . "\r\n";
}
}
$time3 = microtime(1);
echo "此图用时 ", ($time3 - $time2), " S\r\n", "已经用时 ", ($time3 - $time1), " S\r\n\r\n";
}
}
if(!$count)
{
echo "没有有效的加密文件\r\n";
return false;
}
echo "解密完成\r\n";
}
else
{
echo "path invalid ";
return false;
}
}
?>
以上就是这篇文章的全部内容,希望对大家的学习或者工作能有一定的帮助。
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米
暂无评论...
更新日志
2025年10月29日
2025年10月29日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]


