批量修改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代码
Sep 10 PHP
php daodb插入、更新与删除数据
Mar 19 PHP
php函数array_merge用法一例(合并同类数组)
Feb 03 PHP
探讨GDFONTPATH能否被winxp下的php支持
Jun 21 PHP
Smarty中调用FCKeditor的方法
Oct 27 PHP
PHP中Http协议post请求参数
Nov 02 PHP
php实现的中文分词类完整实例
Feb 06 PHP
Thinkphp结合ajaxFileUpload实现异步图片传输示例
Mar 13 PHP
yii2中dropDownList实现二级和三级联动写法
Apr 26 PHP
PHP获取数组中单列值的方法
Jun 10 PHP
php实现算术验证码功能
Dec 05 PHP
Laravel5.1 框架Request请求操作常见用法实例分析
Jan 04 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
收藏的PHP常用函数 推荐收藏保存
2010/02/21 PHP
php 获取select下拉列表框的值
2010/05/08 PHP
php将字符串随机分割成不同长度数组的方法
2015/06/01 PHP
JS(jQuery)实现聊天接收到消息语言自动提醒功能详解【提示“您有新的消息请注意查收”】
2019/04/16 PHP
Js实现双击鼠标自动滚动屏幕的示例代码
2013/12/14 Javascript
理解javascript中的MVC模式
2016/01/28 Javascript
如何解决jQuery EasyUI 已打开Tab重新加载问题
2016/12/19 Javascript
详解angularJs中自定义directive的数据交互
2017/01/13 Javascript
BootStrap Datetimepicker 汉化的实现代码
2017/02/10 Javascript
javascript checkbox/radio onchange不能兼容ie8处理办法
2017/06/13 Javascript
javascript+jQuery实现360开机时间显示效果
2017/11/03 jQuery
js中apply与call简单用法详解
2017/11/06 Javascript
微信小程序实现运动步数排行功能(可删除)
2018/07/05 Javascript
详解如何用VUE写一个多用模态框组件模版
2018/09/27 Javascript
从零开始封装自己的自定义Vue组件
2018/10/09 Javascript
小程序云函数调用API接口的方法
2019/05/17 Javascript
微信jssdk踩坑之签名错误invalid signature
2020/05/19 Javascript
以Python的Pyspider为例剖析搜索引擎的网络爬虫实现方法
2015/03/30 Python
Python中执行存储过程及获取存储过程返回值的方法
2017/10/07 Python
Python循环结构的应用场景详解
2019/07/11 Python
使用Python串口实时显示数据并绘图的例子
2019/12/26 Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
2020/04/23 Python
Django 用户认证Auth组件的使用
2020/11/30 Python
python爬虫beautifulsoup解析html方法
2020/12/07 Python
jupyter notebook指定启动目录的方法
2021/03/02 Python
css3实现超炫风车特效
2014/11/12 HTML / CSS
高级方案规划工程师岗位职责
2013/11/29 职场文书
小学教师办公室制度
2014/02/03 职场文书
小学师德标兵先进事迹材料
2014/05/25 职场文书
2014世界杯球队球队口号
2014/06/05 职场文书
幼儿园小班个人总结
2015/02/12 职场文书
公安机关起诉意见书
2015/05/20 职场文书
一文读懂go中semaphore(信号量)源码
2021/04/03 Golang
python内置进制转换函数的操作
2021/06/02 Python
浅谈Node的内存泄露问题
2022/05/06 NodeJs
Nginx报错104:Connection reset by peer问题的解决及分析
2022/07/23 Servers