/** * 여러 파일 압축해서 다운로드 기능(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); }
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); }