search

php关于zip的使用

/**	 * 	 * 创建压缩包	 * @param array $arr 需要压缩的文件部分路径和文件名,形如 array(	 *   '/file/upload/1.php',	 *   '/file/upload/2011/1.jpg',	 * )	 * 	 * @return string 压缩包的部分路径和文件名,形如/file/uplaod/zip/123.zip	 */	public static function zip($arr)	{	    //首先我建立一个目录	    $save_path = '/file/upload/zip' . Dat::getHourPath();	    $path = APPLICATION_PATH . '/destoon' . $save_path;	    Sys::createDir($path);	    	    $zipname = strval(time()) . mt_rand(100000, 999999) . '.zip';	    $zip_fullname = $path . '/' . $zipname;	    $zip_obj = new ZipArchive();        if ($zip_obj->open($zip_fullname, ZIPARCHIVE::CREATE) !== true) {             return false;         }         foreach ($arr as $value) {         //  $zip->addFile($path, mb_convert_encoding ( basename($path), 'GBK'  ,'UTF-8'));             $zip_obj->addFile( APPLICATION_PATH . '/destoon' . $value, basename($value) );         }         $zip_obj->close();        return $save_path . '/' . $zipname;	    	}		/**	 * 解压缩	 * 	 * @param string $zipname 压缩包的部分路径和文件名,形如'/file/upload/1.zip'	 * @param string $path 解压后的文件夹全路径	 *      * @return array 解压后的文件数组,部分路径和文件名,形如array(     *     '/file/1.php',     *     '/file/12.png',     * )	 */	public static function unzip($zipname , $path='')	{	    if (!$path ) {	        $path = '/file/tempzip_folder/' .               strval(time()) . mt_rand(100000, 999999);	                $newpath = APPLICATION_PATH . '/destoon' . $path; 	    }	    else {	        $newpath = $path;	        $path = preg_replace('#^.+/destoon(.+)$#', '$1', $newpath);	    }	            Sys::createDir($newpath);                    $filename = APPLICATION_PATH . '/destoon' . $zipname;        //第一件事是解压        $zip = new ZipArchive();        $arr = array();        if ($zip->open($filename) === true) {            $zip->extractTo($newpath);            $zip->close();                        $temp = scandir($newpath);            foreach ($temp as $value) {                if ($value != '.' && $value != '..') {                    $arr[] = $path . '/' . basename($value);                }            }        }        return $arr;	    	}			

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
设置Linux系统的PATH环境变量步骤设置Linux系统的PATH环境变量步骤Feb 18, 2024 pm 05:40 PM

Linux系统如何设置PATH环境变量在Linux系统中,PATH环境变量用于指定系统在命令行中搜索可执行文件的路径。正确设置PATH环境变量可以方便我们在任何位置执行系统命令和自定义命令。本文将介绍如何在Linux系统中设置PATH环境变量,并提供详细的代码示例。查看当前的PATH环境变量在终端中执行以下命令,可以查看当前的PATH环境变量:echo$P

HTML 文件压缩成 ZIP 的最佳指南HTML 文件压缩成 ZIP 的最佳指南Apr 09, 2024 pm 04:09 PM

压缩HTML文件成ZIP可提高页面加载速度。方法包括:使用在线工具(如FileOptimizer、TinyPNG)使用命令行工具(如gzip、7-zip)使用Node.js脚本(使用zlib模块)

linux压缩zip命令怎么用linux压缩zip命令怎么用Oct 08, 2023 pm 01:25 PM

zip命令是Linux系统中一个非常有用的压缩工具。通过使用zip命令,您可以轻松地将文件和目录压缩成一个zip文件,并节省存储空间和方便传输。zip命令的基本语法为“zip [选项] [压缩文件名] [要压缩的文件或目录]”。

centos7下解压文件命令(zip)详解centos7下解压文件命令(zip)详解Jan 07, 2024 pm 06:30 PM

1.压缩文件夹为zip文件[root@cgls]#zip-rmydata.zipmydata2.把mydata.zip解压到mydatabak目录里面[root@cgls]#unzipmydata.zip-dmydatabak3.mydata01文件夹和mydata02.txt压缩成为mydata.zip[root@cgls]#zipmydata.zipmydata01mydata02.txt4.直接解压mydata.zip文件[root@cgls]#unzipmydata.zip5.查看myd

如何设置path环境变量如何设置path环境变量Sep 04, 2023 am 11:53 AM

设置path环境变量的方法:1、Windows系统,打开“系统属性”,点击“属性”选项,点击“高级系统设置”,在“系统属性”窗口中,选择“高级”标签,然后点击“环境变量”按钮,找到并点击“Path”编辑保存后即可;2、Linux系统,打开终端,打开你的bash配置文件,在文件末尾添加“export PATH=$PATH:文件路径”保存即可;3、MacOS系统,操作同上。

7z和zip哪个无损7z和zip哪个无损Jan 19, 2021 pm 06:37 PM

7z和zip都是无损压缩。7z是一种主流高效的压缩格式,它拥有极高的压缩比;ZIP文件格式是一种数据压缩和文档储存的文件格式。7z压缩比率大些,zip次之;zip格式比较常见支技泛围广,windows操作系统默认支持zip格式。

如何使用Java中的Zip函数进行文件压缩如何使用Java中的Zip函数进行文件压缩Jun 26, 2023 pm 02:10 PM

压缩文件是一种常见的操作,能够节省磁盘的空间以及网络传输的时间,而Java中提供了Zip函数用于实现文件的压缩。本文将通过详细的介绍和实例演示来展示如何使用Java中的Zip函数进行文件压缩。一、Zip函数介绍Zip函数是Java中提供的压缩和打包工具类库,使用该函数可以将文件或文件夹压缩成一个Zip格式的文件。Zip函数中主要使用了ZipOutputStr

如何正确设置Linux中的PATH环境变量如何正确设置Linux中的PATH环境变量Feb 22, 2024 pm 08:57 PM

如何正确设置Linux中的PATH环境变量在Linux操作系统中,环境变量是用来存储系统级别的配置信息的重要机制之一。其中,PATH环境变量被用来指定系统在哪些目录中查找可执行文件。正确设置PATH环境变量是确保系统正常运行的关键一步。本文将介绍如何正确设置Linux中的PATH环境变量,并提供具体的代码示例。1.查看当前PATH环境变量在终端中输入以下命

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment