从数据库中调用数据生成rar文件(自己的一个小实例)
来源:互联网 发布:python xpath模块 编辑:程序博客网 时间:2024/05/16 00:45
公司买了个火车头商用版软件,要把采集到的数据文件生成rar包。要求是rar压缩包名称为 id.rar 里面有一个要有一个id命名的文件,如44.rar 文件里面有三个子文件 分别是 config.ini id.jpg/png/gif (根据数据库中的图片路径正则获取里面的图片文件) id.nfo(一些指南,使用教程啥的)。于是折腾啊。代码贴出来供自己以后参考,还有完善
脚本如下:
header("charset=utf8");
define('BASE_DIR', 'd:/testrar/rarfile/');//rar包存放路径
define('IMAGE_DIR', 'd:/testrar/imgfile/');//图片存放路径
define('BASE_EXEC', 'D:\\testrar\\rarfile\\');//exec执行后的rar包存放路径
define('WINRAR_DIR', 'D:\\app\\WinRAR\\Rar.exe');//winrar存放目录
creatrar();//执行主程序
function creatrar() {
connect_sql();//连接数据库
$sql = "SELECT * FROM test";
$result = mysql_query($sql);
$row_content = array();
while($row = mysql_fetch_array($result)) {
$row_content[] = $row;
}
foreach($row_content as $key=>$val) {
$new_dir = BASE_DIR.$val['test_id'];
$flash_image = get_image($val['test_id']);
//创建目录
mkdir_dir(BASE_DIR.$val['test_id']);
//copy图片
copy_file(IMAGE_DIR.$flash_image, $new_dir."/".$flash_image);
//生成config.ini文件
$content_ini = "[stuff]\nstuff_id=".$val['test_id']."\nstuff_ico=".$flash_image."\nstuff_folder=".$val['test_title']."\nstuff_exe=http://dl.99game.com/stuff/".$val['test_id']."/".$val['test_id'].".swf\nstuff_cate=flash\nstuff_name=".$val['test_title']."\n\n[other]";
create_file($new_dir."/config.ini", $content_ini);
//生成nfo文件
$content_nfo = $val['test_content'];
create_file($new_dir."/".$val['test_id'].".nfo", $content_nfo);
exec("start ".WINRAR_DIR." a -m5 -ep ".BASE_EXEC.$val['test_id'].".rar ".BASE_EXEC.$val['test_id']."");//利用winrar工具生成rar包
//删除文件和目录
del_file(BASE_DIR.$val['test_id']."/config.ini");
del_file(BASE_DIR.$val['test_id']."/".$val['test_id'].".nfo");
del_file(BASE_DIR.$val['test_id']."/".$flash_image);
del_dir(BASE_DIR.$val['test_id']);
}
close_sql();
}
//方法如下:
//创建目录
function mkdir_dir($dir_name) {
mkdir($dir_name, 0777);
}
//copy图片
function copy_file($file_name, $target_name) {
copy($file_name, $target_name);
}
//生成并且写入文件
function create_file($file_dir, $fwrite_content) {
$fopen = fopen($file_dir, "w+");
$fwrite = fwrite($fopen, $fwrite_content);
fclose($fopen);
}
//删除文件
function del_file($file_name) {
unlink($file_name);
}
//删除目录
function del_dir($dir_name) {
rmdir($dir_name);
}
//获取图片名称
function get_image($flash_id) {
$sql = "SELECT test_img FROM test WHERE test_id = '{$flash_id}'";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
$flash_image = explode('/', $row['test_img']); //路径格式:/upload_pic/2013/04/11/4399_13421932538.jpg
$flash_image = end($flash_image);
return $flash_image;
}
//数据库连接
function connect_sql() {
$conn = mysql_connect('localhost', 'root', '123456') or die('数据连接错误');
mysql_select_db('test', $conn);
mysql_query("SET NAMES utf8");
}
//数据库关闭
function close_sql() {
mysql_close();
}
?>
- 从数据库中调用数据生成rar文件(自己的一个小实例)
- 将自己得到的数据从txt文档中读入,生成pcd文件
- java小程序从数据库中(表)中读取数据然后创建文件夹生成txt文件
- ObjectARX中调用ADO封装类实现数据库查询读取写入数据的一个类实例
- php从数据库中读取数据生成xml文件的方法
- php从数据库中读取数据生成xml文件的方法
- 以实例说明如何使用C#从数据库中提取数据,按要求自动生成定制的Excel表格
- 以实例说明如何使用C#从数据库中提取数据,按要求自动生成定制的Excel表格
- 以实例说明如何使用C#从数据库中提取数据,按要求自动生成定制的Excel表格?
- 一个简单的从txt文件中读取数据插入数据库
- 从数据库中取出数据存入memcache的过程实例
- 简单的从数据库中读取数据自动生成XML
- 图片文件中隐藏一个rar压缩包的秘密
- 自己编写的一个程序:读取XML格式的日志文件,并以一定的数据写入数据库中
- 用perl 从一个文件生成另一个文件(小case)
- 分享自己的一个小数据库“Bug”
- 从Oracle数据库中导出一个表的数据
- 最近写了一个从数据库中读取文件并写在txt文件中(当数据过多的时候写在多个txt文件中)
- php str_pad字符串填补函数
- php正则之匹配图片中的路径
- 关于方法论的对话之一方法论基本
- 零碎知识点总结
- 5.30 Struts2
- 从数据库中调用数据生成rar文件(自己的一个小实例)
- cmd压缩文件
- Windows Server 各个版本的区别
- linux文件目录结构
- ubuntu安装php+mysql+apche
- 在C++中使用IoC及DSM框架
- php对数组重新排序
- 关于方法论的对话之二敏捷与方法论
- 解决360下input文本框光标 上移的问题