首页 > 编程 > PHP > 正文

PHP如何实现解压压缩包文件到指定目录-(纯代码)

2020-03-22 17:04:58
字体:
来源:转载
供稿:网友
本篇文章给大家带来的内容是关于PHP如何实现解压压缩包文件到指定目录?(纯代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

//$src_file为文件路径,上传文件返回压缩包路径即可html' target='_blank'>public function unzip($src_file, $dest_dir=false, $create_zip_name_dir=true, $overwrite=true){ $filePath_arr = []; if ($zip = zip_open($src_file)){ if ($zip){ $splitter = ($create_zip_name_dir === true) ? . : /  if($dest_dir === false){ $dest_dir = substr($src_file, 0, strrpos($src_file, $splitter)). /  // 如果不存在 创建目标解压目录 $this- create_dirs($dest_dir); // 对每个文件进行解压 while ($zip_entry = zip_read($zip)){ // 文件不在根目录 $pos_last_slash = strrpos(zip_entry_name($zip_entry), /  if ($pos_last_slash !== false){ // 创建目录 在末尾带 / $this- create_dirs($dest_dir.substr(zip_entry_name($zip_entry), 0, $pos_last_slash+1)); // 打开包 if (zip_entry_open($zip,$zip_entry, r )){ // 文件名保存在磁盘上 $file_name = $dest_dir.zip_entry_name($zip_entry); // 检查文件是否需要重写 if ($overwrite === true || $overwrite === false !is_file($file_name)){ // 读取压缩文件的内容 $fstream = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry)); @file_put_contents($file_name, $fstream); // 设置权限 chmod($file_name, 0777); echo save: .$file_name. br /  // 关闭入口 zip_entry_close($zip_entry); // 关闭压缩包 zip_close($zip); }else{ return false; return $filePath_arr; //返回压缩后所有文件路径 * 创建目录 public function create_dirs($path){ if (!is_dir($path)){ $directory_path =  $directories = explode( / ,$path); array_pop($directories); foreach($directories as $directory){ $directory_path .= $directory. /  if (!is_dir($directory_path)){ mkdir($directory_path); chmod($directory_path, 0777); }

相关文章推荐:

php如何创建文件目录?(纯代码)

php如何来实现返回json数据(代码)

以上就是PHP如何实现解压压缩包文件到指定目录?(纯代码)的详细内容,PHP教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表