批量修改RAR文件注释的php代码


Posted in PHP onNovember 20, 2010

我们打开WINRAR的帮助文件,帮助文件中提到了在命令行模式下修改RAR文件注释及添加压缩文档的两个参数分别为A\C,WINRAR的说明文件如下:
从当前文件夹添加全部 *.hlp 文件到压缩文件 help.rar 中

WinRAR a help *.hlp

从文件添加注释可以使用 -z<文件> 开关。
WinRAR c -zinfo.txt dummy

这样,我们就可以通过PHP调用CMD,运行上述两个WINRAR参数来做到批量修改RAR文件的注释及添加压缩包的文件.需要注意的是,PHP在安全模式打开的情况下是不能直接调用CMD的.

下面的代码就是我通过我的数据库读取出文件路径并最终实现批量修改RAR文件注释的方法.因为数据库是ACCESS,我新建了一个ODBC源.同时RAR.exe及CMD.EXE都在1.PHP同目录下

<? 
$id=$_GET[id]; 
if($id=="") 
{ 
echo "参数错误"; 
exit; 
} 
if($id>=400) 
{ 
echo "全部结束"; 
exit; 
} 
$db=odbc_connect("dw","",""); 
$sql="select * from 'download' where 'id'=$id"; 
$query=odbc_exec($db,$sql); 
$filename=odbc_result($query,2); 
if($filename=="") 
{ } 
$filename=str_replace("#1″,"",$filename); 
$filename=str_replace("#2″,"",$filename); 
$filename="soft/".$filename; 
echo $filename."<br>"; 
if(!file_exists($filename)) 
{ 
echo "文件不存在,转到下一个ID"; 
$id++; 
echo "<META HTTP-EQUIV='Refresh' 
CONTENT='0;URL=../test/1.php?id=$id'>"; 
exit; 
}//读出文件名,并检查文件是否存在 
else 
{ 
'WinRAR a $filename 使用说明.txt'; 
echo "插入说明文件成功"; 
$id++; 
echo "<META HTTP-EQUIV='Refresh' CONTENT='0;URL=../test/1.php?id=$id'>"; 
} 
odbc_close($db); 
?>

××××××××××××××××××××
最近采集流行,可能许多朋友都尝试通过采集数据来建设一个内容丰富完善的站点.
可是,在某些时候我们通常采集得到的RAR文件都被批量加了注释,这个时候如果将这些数据放到自己的站上无异于为人家做广告.
最近我也碰到了这样的问题,为此大伤脑筋,后来仔细的翻看WINRAR的帮助文件发现我们可以通过下面的方法来做到批量修改.
我们打开WINRAR的帮助文件,帮助文件中提到了在命令行模式下修改RAR文件注释及添加压缩文档的两个参数分别为A\C,WINRAR的说明文件如下:
从当前文件夹添加全部 *.hlp 文件到压缩文件 help.rar 中
WinRAR a help *.hlp

从文件添加注释可以使用 -z<文件> 开关。
WinRAR c -zinfo.txt dummy

这样,我们就可以通过PHP调用CMD,运行上述两个WINRAR参数来做到批量修改RAR文件的注释及添加压缩包的文件.需要注意的是,PHP在安全模式打开的情况下是不能直接调用CMD的.

下面的代码就是我通过我的数据库读取出文件路径并最终实现批量修改RAR文件注释的方法.因为数据库是ACCESS,我新建了一个ODBC源.RAR.EXE及CMD.EXE都在1.PHP的相同目录下

<? 
$id=$_GET[id]; 
if($id=="") 
{ 
echo "参数错误"; 
exit; 
} 
if($id>=400) 
{ 
echo "全部结束"; 
exit; 
} 
$db=odbc_connect("dw","",""); 
$sql="select * from 'download' where 'id'=$id"; 
$query=odbc_exec($db,$sql); 
$filename=odbc_result($query,2); 
if($filename=="") 
{ 
} 
$filename=str_replace("#1″,"",$filename); 
$filename=str_replace("#2″,"",$filename); 
$filename="soft/".$filename; 
echo $filename."<br>"; 
if(!file_exists($filename)) 
{ 
echo "文件不存在,转到下一个ID"; 
$id++; 
echo "<META HTTP-EQUIV='Refresh' 
CONTENT='0;URL=../test/1.php?id=$id'>"; 
exit; 
}//读出文件名,并检查文件是否存在 
else 
{ 
'WinRAR a $filename 使用说明.txt'; 
echo "插入说明文件成功"; 
$id++; 
echo "<META HTTP-EQUIV='Refresh' CONTENT='0;URL=../test/1.php?id=$id'>"; 
} 
odbc_close($db); 
?>
PHP 相关文章推荐
PHP和Mysqlweb应用开发核心技术-第1部分 Php基础-2 php语言介绍
Jul 03 PHP
怎样给PHP源代码加密?PHP二进制加密与解密的解决办法
Apr 22 PHP
编写安全 PHP应用程序的七个习惯深入分析
Jun 08 PHP
解析php中heredoc的使用方法
Jun 17 PHP
PHP垃圾回收机制引用计数器概念分析
Jun 24 PHP
8个必备的PHP功能实例代码
Oct 27 PHP
php获取汉字首字母的函数
Nov 07 PHP
PHP连接MySQL的2种方法小结以及防止乱码
Mar 11 PHP
PHP判断是否有Get参数的方法
May 05 PHP
PHP连接MSSQL时nvarchar字段长度被截断为255的解决方法
Dec 25 PHP
php利用header函数下载各种文件
Aug 24 PHP
php fseek函数读取大文件两种方法
Oct 12 PHP
为PHP初学者的8点有效建议
Nov 20 #PHP
PHP程序员最常犯的11个MySQL错误小结
Nov 20 #PHP
Windows 下的 PHP-PEAR 安装方法
Nov 20 #PHP
整理的9个实用的PHP库简介和下载
Nov 09 #PHP
Notice: Undefined index: page in E:\PHP\test.php on line 14
Nov 02 #PHP
在PHP中使用curl_init函数的说明
Nov 02 #PHP
php运行出现Call to undefined function curl_init()的解决方法
Nov 02 #PHP
You might like
双料怀旧--SHARP GF515的维护、修理和简单调试
2021/03/02 无线电
php 文件缓存函数
2011/10/08 PHP
php 批量替换程序的具体实现代码
2013/10/04 PHP
php查看网页源代码的方法
2015/03/13 PHP
php实现word转html的方法
2016/01/22 PHP
django中的ajax组件教程详解
2018/10/18 PHP
PHP大文件切割上传并带进度条功能示例
2019/07/01 PHP
dwr spring的集成实现代码
2009/03/22 Javascript
Prototype Template对象 学习
2009/07/19 Javascript
Jquery模仿Baidu、Google搜索时自动补充搜索结果提示
2013/12/26 Javascript
jquery单选框radio绑定click事件实现方法
2015/01/14 Javascript
比例尺、缩略图、平移缩放之百度地图添加控件方法
2015/08/03 Javascript
BootStrap创建响应式导航条实例代码
2016/05/31 Javascript
React-router 4 按需加载的实现方式及原理详解
2017/05/25 Javascript
超级简易的JS计算器实例讲解(实现加减乘除)
2017/08/08 Javascript
详解如何实现一个简单的Node.js脚手架
2017/12/04 Javascript
微信小程序录音与播放录音功能
2017/12/25 Javascript
jQuery实现使用sort方法对json数据排序的方法
2018/04/17 jQuery
vue表单验证你真的会了吗?vue表单验证(form)validate
2019/04/07 Javascript
vue实现滑动到底部加载更多效果
2020/10/27 Javascript
微信小程序仿通讯录功能
2020/04/09 Javascript
antd vue table跨行合并单元格,并且自定义内容实例
2020/10/28 Javascript
Python time模块详解(常用函数实例讲解,非常好)
2014/04/24 Python
Python中property函数用法实例分析
2018/06/04 Python
Python将视频或者动态图gif逐帧保存为图片的方法
2019/09/10 Python
python中Django文件上传方法详解
2020/08/05 Python
美国派对用品及装饰品网上商店:Shindigz
2016/07/30 全球购物
美国Rue La La闪购网站:奢侈品、中高档品牌限时折扣
2016/10/19 全球购物
美国面料纺织品商城:Fabric.com
2017/06/28 全球购物
当当网软件测试笔试题
2015/11/24 面试题
大学生职业生涯规划方案
2014/01/03 职场文书
党员入党表决心的话
2014/03/11 职场文书
建材投资建议书
2014/05/16 职场文书
抄袭同学作业检讨书1000字
2014/11/20 职场文书
Go语言实现Snowflake雪花算法
2021/06/08 Golang
在vue中import()语法不能传入变量的问题及解决
2022/04/01 Vue.js