这个数组,如何把doc文件打包下载,把doc文件重命名。 下载压缩指的是下载有这个数组的文件吧。三点都用shell脚本比较方便 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 哎,问题是要用php做啊求助 http://php.net/manual/zh/class.ziparchive.php ,也在看 资料:http://www.info110.com/phpbiancheng/in24487-1.htm小弟思路是这样的:创建一个空的zip文件,在取到文件后可以读取文件内容转而用title来生产文件加到zip文件中,最后下载就可以,不知道对错 网上找的一段代码他这个可以现在并打包jpg的文件,但是我修改了,就无法下载了,请高人指点<?php$pic_path = 'http://www.baidu.com';$qrList = array( array( 'data'=>array( 'id'=>1, 'source'=>'qrCodeSale1' ), ), array( 'data'=>array( 'id'=>2, 'source'=>'qrCodeSale2' ), ), array( 'data'=>array( 'id'=>3, 'source'=>'qrCodeSale3' ), ),);$filename = '/tmp/batchQrCodeDownload.zip';$zip = new ZipArchive();$zip->open($filename, ZipArchive::OVERWRITE);$zip->addEmptyDir('images'); //增加一个目录的原因是,如果zip包没东西会一直下载,永不停止foreach ($qrList as $value) { $fileData = file_get_contents($pic_path . '/' . $value['data']['source'] . '/' . $value['data']['source'] . '_' . $value['data']['id'] . '.jpg'); if ($fileData) { $zip->addFromString('images/' . $value['data']['source'] . '.jpg', $fileData); }}$zip->close();//打开文件$file = fopen($filename, "r");//返回的文件类型Header("Content-type: application/octet-stream");//按照字节大小返回Header("Accept-Ranges: bytes");//返回文件的大小Header("Accept-Length: " . filesize($filename));//这里对客户端的弹出对话框,对应的文件名Header("Content-Disposition: attachment; filename=batchQrCodeDownload.zip");//一次只传输1024个字节的数据给客户端//向客户端回送数据$buffer = 1024; ////判断文件是否读完while (!feof($file)) { //将文件读入内存 $file_data = fread($file, $buffer); //每次向客户端回送1024个字节的数据 echo $file_data;} fclose($file); unlink($filename); //删除文件?> php执行windows程序问题,紧急求助 ajax 取 不了返回值 请教ldap_search()取不到数据的问题 [smarty][date_format] 大家说我该不该去sina呢,已经面试成功了 这段SQL应该怎么写啊? 请问PHP能做到这样吗?用什么方法呢? 正则表达,再问!想搞清楚这个东东啊。 session_start()为什么出错? 咨询下各位大神们,开了服务器配置,公众号提示错误 学渣求问PHP获得form表单提交的值的问题 EditPlus和浏览器中Courier New字体发虚,怎么解决?
哎,问题是要用php做啊求助
创建一个空的zip文件,在取到文件后可以读取文件内容转而用title来生产文件加到zip文件中,最后下载就可以,不知道对错
他这个可以现在并打包jpg的文件,但是我修改了,就无法下载了,请高人指点
<?php
$pic_path = 'http://www.baidu.com';
$qrList = array(
array(
'data'=>array(
'id'=>1,
'source'=>'qrCodeSale1'
),
),
array(
'data'=>array(
'id'=>2,
'source'=>'qrCodeSale2'
),
),
array(
'data'=>array(
'id'=>3,
'source'=>'qrCodeSale3'
),
),
);
$filename = '/tmp/batchQrCodeDownload.zip';
$zip = new ZipArchive();
$zip->open($filename, ZipArchive::OVERWRITE);
$zip->addEmptyDir('images'); //增加一个目录的原因是,如果zip包没东西会一直下载,永不停止
foreach ($qrList as $value) {
$fileData = file_get_contents($pic_path . '/' . $value['data']['source'] . '/' . $value['data']['source'] . '_' . $value['data']['id'] . '.jpg');
if ($fileData) {
$zip->addFromString('images/' . $value['data']['source'] . '.jpg', $fileData);
}
}
$zip->close();
//打开文件
$file = fopen($filename, "r");
//返回的文件类型
Header("Content-type: application/octet-stream");
//按照字节大小返回
Header("Accept-Ranges: bytes");
//返回文件的大小
Header("Accept-Length: " . filesize($filename));
//这里对客户端的弹出对话框,对应的文件名
Header("Content-Disposition: attachment; filename=batchQrCodeDownload.zip");
//一次只传输1024个字节的数据给客户端
//向客户端回送数据
$buffer = 1024; //
//判断文件是否读完
while (!feof($file)) {
//将文件读入内存
$file_data = fread($file, $buffer);
//每次向客户端回送1024个字节的数据
echo $file_data;
}
fclose($file);
unlink($filename); //删除文件
?>