Discuz教程网

PHP 修改RAR文件注释及添加压缩文档讲解

[复制链接]
authicon dly 发表于 2012-6-22 11:36:21 | 显示全部楼层 |阅读模式
我们打开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同目录下
代码如下:
  1. <?php
  2. $id=$_GET[id];
  3. if($id==”")
  4. {
  5. echo “参数错误”;
  6. exit;
  7. }
  8. if($id>=400)
  9. {
  10. echo “全部结束”;
  11. exit;
  12. }
  13. $db=odbc_connect(“dw”,”",”");
  14. $sql=”select * from ‘download’ where ‘id’=$id”;
  15. $query=odbc_exec($db,$sql);
  16. $filename=odbc_result($query,2);
  17. if($filename==”")
  18. {
  19. }
  20. $filename=str_replace(“#1″,”",$filename);
  21. $filename=str_replace(“#2″,”",$filename);
  22. $filename=”soft/”.$filename;
  23. echo $filename.”<br>”;
  24. if(!file_exists($filename))
  25. {
  26. echo “文件不存在,转到下一个ID”;
  27. $id ;
  28. echo “<META HTTP-EQUIV=’Refresh’
  29. CONTENT=’0;URL=../test/1.php?id=$id’>”;
  30. exit;
  31. }//读出文件名,并检查文件是否存在
  32. else
  33. {
  34. ‘WinRAR a $filename 使用说明.txt’;
  35. echo “插入说明文件成功”;
  36. $id ;
  37. echo “<META HTTP-EQUIV=’Refresh’ CONTENT=’0;URL=../test/1.php?id=$id’>”;
  38. }
  39. odbc_close($db);
  40. ?>
复制代码

××××××××××××××××××××
最近采集流行,可能许多朋友都尝试通过采集数据来建设一个内容丰富完善的站点.
可是,在某些时候我们通常采集得到的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的相同目录下
代码如下:
  1. <?php
  2. $id=$_GET[id];
  3. if($id==”")
  4. {
  5. echo “参数错误”;
  6. exit;
  7. }
  8. if($id>=400)
  9. {
  10. echo “全部结束”;
  11. exit;
  12. }
  13. $db=odbc_connect(“dw”,”",”");
  14. $sql=”select * from ‘download’ where ‘id’=$id”;
  15. $query=odbc_exec($db,$sql);
  16. $filename=odbc_result($query,2);
  17. if($filename==”")
  18. {
  19. }
  20. $filename=str_replace(“#1″,”",$filename);
  21. $filename=str_replace(“#2″,”",$filename);
  22. $filename=”soft/”.$filename;
  23. echo $filename.”<br>”;
  24. if(!file_exists($filename))
  25. {
  26. echo “文件不存在,转到下一个ID”;
  27. $id ;
  28. echo “<META HTTP-EQUIV=’Refresh’
  29. CONTENT=’0;URL=../test/1.php?id=$id’>”;
  30. exit;
  31. }//读出文件名,并检查文件是否存在
  32. else
  33. {
  34. ‘WinRAR a $filename 使用说明.txt’;
  35. echo “插入说明文件成功”;
  36. $id ;
  37. echo “<META HTTP-EQUIV=’Refresh’ CONTENT=’0;URL=../test/1.php?id=$id’>”;
  38. }
  39. odbc_close($db);
  40. ?>
复制代码




上一篇:xiaodong.com空间申请
下一篇:【0712】1314学习网对外扩招,欢迎大家踊跃参与
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2024-5-3 00:15

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表