php中怎么样下载整个文件夹 phpZip一个在服务器端解压的 php 程序,使用附带的压缩工具压缩,可以将文件夹压缩成单个文件,直接在服务器端解压,附带打包下载的工具,可以一次性将服务器上整个文件夹打包下载,在本地解压,程序可以与 WinRAR 一样,可以与 Explorer 集成,方便操作 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 把目录压缩成文件后下载。压缩用的php程序在phpmyadmin中就有!libraries/zip.lib.php 文件如果大的话,不要用libraries/zip.lib.php压缩,会把服务器拖垮的,我用它压过300M的东西,结果服务器差点down掉了, 最好的办法是给一个包含所有文件下载地址的页面,然后用flashget下载页面的全部连接 说办公室里的人flashget都不会用的 那就叫他们一个一个点吧或者就教会他们用flashget ftp用flashget都能下载一个目录的话,太不安全了 还有一种办法,就是用exec来调用rar,压缩文件夹!function rar($dir_name){ $filename = 'rar.bat'; $real_path = realpath (""); $date=date("Y-m-d"); if (!is_dir($dir_name)): echo "你要压缩的文件夹".$dir_name."不存在!"; endif; $file_path =$real_path."\\".$dir_name; // 生成备份批处理文件内容 $somecontent = "path .;C:\Program Files\WinRAR rar a ".$dir_name.".rar ".$dir_name." $handle = fopen($filename, 'w'); // 确定文件存在并且可写。 if (is_writable($filename)): if (!$handle): echo "读取批处理文件失败!"; exit; endif; // 将$somecontent写入到我们打开的文件中。 if (!fwrite($handle, $somecontent)) : echo "修改批处理文件失败!"; exit; endif; fclose($handle); if (exec("rar.bat")): echo "文件夹".$dir_name."压缩成功!"; exit; else: echo "文件夹".$dir_name."压缩失败!"; exit; endif; exit; else: echo "批处理文件不能执行,\\n请修改权限"; exit; endif;} ;//************************************以上代码本人写的匆忙,没有测试!见谅!应该没有问题,才用此方法写了oracle备份的! $somecontent = "cd ".$file_path." path .;C:\Program Files\WinRAR rar a ".$dir_name.".rar ".$dir_name.";不好意思!刚才的批处理文件忘记写一句话了,嘻嘻!忘记进入目录! <?php function rar($dir_name){ $filename = 'bak.bat'; $real_path = realpath (""); $date=date("Y-m-d"); if (!is_dir($dir_name)): echo "你要压缩的文件夹".$dir_name."不存在!"; exit; endif; // 生成备份批处理文件内容 $somecontent = "cd ".$real_path." path .;C:\Program Files\WinRAR rar a ".$dir_name.".rar ".$dir_name; $handle = fopen($filename, 'w'); // 确定文件存在并且可写 if (is_writable($filename)): if (!$handle): echo "读取批处理文件失败!"; exit; endif; // 将$somecontent写入到我们打开的文件中。 if (!fwrite($handle, $somecontent)) : echo "修改批处理文件失败!"; exit; endif; fclose($handle); if (exec("bak.bat")): echo "文件夹".$dir_name."压缩成功!"; exit; else: echo "文件夹".$dir_name."压缩失败!"; exit; endif; exit; else: echo "批处理文件不能执行,\\n请修改权限"; exit; endif;}rar("12366");?>//***********************************经过测试了,嘻嘻.刚才的代码因为马虎,出了不可饶恕的问题,不好意思.不能用rar.bat.这是一个死循环! php 自动换行 php语法if else的一个问题。 asterisk (php方面的开发) 新手请教啊 不用return怎么改变改变全局变量的值? 我用wamp装了PHP,请问apache下的php.ini 和php文件下 php.ini 有什么区别? 关于session.name的一个问题 如何友好的提示错误? 团队招收人员 怎么让http自动连接呢? 数组问题??? 那位给个在freebsd 4.10下配置mysql+php+apache的详细方法,谢了
压缩用的php程序在phpmyadmin中就有!libraries/zip.lib.php
或者就教会他们用flashget
用flashget都能下载一个目录的话,太不安全了
function rar($dir_name){
$filename = 'rar.bat';
$real_path = realpath ("");
$date=date("Y-m-d");
if (!is_dir($dir_name)):
echo "你要压缩的文件夹".$dir_name."不存在!";
endif;
$file_path =$real_path."\\".$dir_name;
// 生成备份批处理文件内容
$somecontent = "path .;C:\Program Files\WinRAR
rar a ".$dir_name.".rar ".$dir_name."
$handle = fopen($filename, 'w');
// 确定文件存在并且可写。
if (is_writable($filename)):
if (!$handle):
echo "读取批处理文件失败!";
exit;
endif;
// 将$somecontent写入到我们打开的文件中。
if (!fwrite($handle, $somecontent)) :
echo "修改批处理文件失败!";
exit;
endif;
fclose($handle);
if (exec("rar.bat")):
echo "文件夹".$dir_name."压缩成功!";
exit;
else:
echo "文件夹".$dir_name."压缩失败!";
exit;
endif;
exit;
else:
echo "批处理文件不能执行,\\n请修改权限";
exit;
endif;
} ;
//************************************
以上代码本人写的匆忙,没有测试!见谅!
应该没有问题,才用此方法写了oracle备份的!
path .;C:\Program Files\WinRAR
rar a ".$dir_name.".rar ".$dir_name.";
不好意思!
刚才的批处理文件忘记写一句话了,嘻嘻!
忘记进入目录!
function rar($dir_name){
$filename = 'bak.bat';
$real_path = realpath ("");
$date=date("Y-m-d");
if (!is_dir($dir_name)):
echo "你要压缩的文件夹".$dir_name."不存在!";
exit;
endif;
// 生成备份批处理文件内容
$somecontent = "cd ".$real_path."
path .;C:\Program Files\WinRAR
rar a ".$dir_name.".rar ".$dir_name;
$handle = fopen($filename, 'w');
// 确定文件存在并且可写
if (is_writable($filename)):
if (!$handle):
echo "读取批处理文件失败!";
exit;
endif;
// 将$somecontent写入到我们打开的文件中。
if (!fwrite($handle, $somecontent)) :
echo "修改批处理文件失败!";
exit;
endif;
fclose($handle);
if (exec("bak.bat")):
echo "文件夹".$dir_name."压缩成功!";
exit;
else:
echo "文件夹".$dir_name."压缩失败!";
exit;
endif;
exit;
else:
echo "批处理文件不能执行,\\n请修改权限";
exit;
endif;
}
rar("12366");
?>
//***********************************
经过测试了,嘻嘻.刚才的代码因为马虎,出了不可饶恕的问题,不好意思.不能用rar.bat.这是一个死循环!