zoukankan      html  css  js  c++  java
  • CI 框架导出文件

     

     CI框架目录结构: 
      
    |-application  (应用目录)
    |-system  (核心目录)
    |-downexcel  (文件存在目录)
    |-ZipBackDir (备份目录)
    |-index.php (入口文件)





      $zip=new ZipArchive(); //生成压缩后文件名 $ZipBackDir = "ZipBackDir/1.zip"; if($zip->open($ZipBackDir, ZipArchive::CREATE)=== TRUE){ $this->addFileToZip("downexcel/".time(), $zip); $zip->close(); }else{ echo "读取失败~"; } /*header ( "Cache-Control: max-age=0" ); header ( "Content-Description: File Transfer" ); header ( 'Content-disposition: attachment; filename=' . basename ($ZipBackDir ) ); // 文件名 header ( "Content-Type: application/zip" ); // zip格式的 header ( "Content-Transfer-Encoding: binary" ); // 告诉浏览器,这是二进制文件 header ( 'Content-Length: ' . filesize ( $ZipBackDir ) ); // 告诉浏览器,文件大小 @readfile ( $ZipBackDir );//输出文件;*/ } function addFileToZip($path,$zip){ $handler=opendir($path); //打开当前文件夹由$path指定。 while(($filename=readdir($handler))!==false){ if($filename != "." && $filename != ".."){//文件夹文件名字为'.'和‘..’,不要对他们进行操作 if(is_dir($path."/".$filename)){// 如果读取的某个对象是文件夹,则递归 $this->addFileToZip($path."/".$filename, $zip); }else{ //将文件加入zip对象 $zip->addFile($path."/".$filename); } } } @closedir($path); }
  • 相关阅读:
    Mysql的select加锁分析
    浅析Kubernetes的工作原理
    HTTP/2部署使用
    Amazon新一代云端关系数据库Aurora
    为什么 kubernetes 天然适合微服务
    深入解读Service Mesh背后的技术细节
    微服务的接入层设计与动静资源隔离
    Prim算法和Kruskal算法介绍
    DAG及拓扑排序
    BFS和DFS
  • 原文地址:https://www.cnblogs.com/c-961900940/p/6211699.html
Copyright © 2011-2022 走看看