Exemplo n.º 1
0
 /**
  * 여러 파일 압축해서 다운로드 기능(2009.12.07)
  */
 function zip()
 {
     $ftp = $this->container->get('ftp');
     $dir = $this->getParameter('dir', '/');
     $parent = $this->getParameter('path', '/');
     $folder = $this->getParameter('folder', '');
     $file = $this->getParameter('file', '');
     $current = rtrim($parent, '/') . '/' . ltrim($dir, '/');
     $this->debug(array('dir' => $dir, 'parent' => $parent, 'current' => $current, 'folder' => $folder, 'file' => $file));
     // TODO::임시파일이름 지정
     $temp_file = tempnam(sys_get_temp_dir(), 'Zip');
     $model = new \App\Models\Ftp($ftp);
     $zip = $model->zip($current, $folder, $file, $temp_file);
     $this->debug($temp_file);
     $zipfile = $_SESSION['data']['username'] . '-' . time() . '.zip';
     $fileDownload = FileDownload::createFromFilePath($temp_file);
     $fileDownload->sendDownload($zipfile);
 }
Exemplo n.º 2
0
 function zip()
 {
     $ftp = $this->container->get('ftp');
     $dir = $this->getParameter('dir', '/');
     $parent = $this->getParameter('path', '/');
     $folder = $this->getParameter('folder', '');
     $file = $this->getParameter('file', '');
     $save_filename = $this->getParameter('save_filename', '');
     $current = rtrim($parent, '/') . '/' . ltrim($dir, '/');
     $this->debug(array('dir' => $dir, 'parent' => $parent, 'current' => $current, 'folder' => $folder, 'file' => $file, 'save_filename' => $save_filename));
     // TODO::임시파일이름 지정
     $temp_file = tempnam(sys_get_temp_dir(), 'Zip');
     $model = new \App\Models\Ftp($ftp);
     $zip = $model->zip($current, $folder, $file, $temp_file);
     $this->debug($temp_file);
     $upfile['tmp_name'] = $temp_file;
     $upfile['name'] = rtrim($save_filename, '.zip') . '.zip';
     $model->upload($current, $upfile);
     $this->debug($upfile);
 }