您好,欢迎访问一九零五行业门户网

实例详解php如何生成zip文件类

这篇文章主要介绍了php生成zip文件类,实例分析了php操作zip文件的技巧,非常具有实用价值,需要的朋友可以参考下
<?php /* by: matt ford purpose: basic class to create zipfiles */class zipfile { public $files = array(); public $settings = null; public $fileinfo = array ( "name" => "", "numfiles" => 0, "fullfilepath" => "" ); private $filehash = ""; private $zip = ""; public function __construct($settings) { $this->zipfile($settings); } public function zipfile($settings) { $this->zip = new ziparchive(); $this->settings = new stdclass(); foreach ($settings as $k => $v) { $this->settings->$k = $v; } } public function create() { $this->filehash = md5(implode(",", $this->files)); $this->fileinfo["name"] = $this->filehash . ".zip"; $this->fileinfo["numfiles"] = count($this->files); $this->fileinfo["fullfilepath"] = $this->settings->path . "/" . $this->fileinfo["name"]; if (file_exists($this->fileinfo["fullfilepath"])) { return array ( false, "already created: " . $this->fileinfo["fullfilepath"] ); } else { $this->zip->open($this->fileinfo["fullfilepath"], ziparchive::create); $this->addfiles(); $this->zip->close(); return array ( true, "new file created: " . $this->fileinfo["fullfilepath"] ); } } private function addfiles() { foreach ($this->files as $k) { $this->zip->addfile($k, basename($k)); } }}$settings = array ( "path" => dirname(__file__) );$zipfile = new zipfile($settings);$zipfile->files = array ( "./images/navoff.jpg", "./images/navon.jpg" );list($success, $error) = $zipfile->create();if ($success === true) { //success}else { //error because: $error}?>
【相关教程推荐】
1. php编程从入门到精通全套视频教程 
2. php从入门到精通 
3. bootstrap教程
其它类似信息

推荐信息