include/chajian/zipChajian.php

(开头部分) 3KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php 
class zipChajian extends Chajian{

	/**
	*	解压zip文件
	*/
	public function unzip($filename, $path){
		if(!function_exists('zip_open'))return 'php未开启zip模块';
		if(!file_exists($filename))return '文件不存在';
		@$resource = zip_open($filename);
		if(!$resource)return '无法打开文件';
		while ($dir_resource = zip_read($resource)){
			if(zip_entry_open($resource,$dir_resource)){
				$file_name = $path.zip_entry_name($dir_resource);
				$file_path = substr($file_name,0,strrpos($file_name, "/"));
				if(!is_dir($file_path))mkdir($file_path,0777,true);
				if(!is_dir($file_name)){
					$file_size 		= zip_entry_filesize($dir_resource);
					$file_content 	= zip_entry_read($dir_resource, $file_size);
					$bos 			= $this->writefile($file_name, $file_content);
					if(!$bos)return '无权限写入文件:'.$file_name.'';
				}
				zip_entry_close($dir_resource);
			}
		}
		zip_close($resource); 
		return 'ok';
	}
	
	private function writefile($file_name, $file_content)
	{
		$oldcont 		= '';
		if(file_exists($file_name)){
			$oldcont 	= file_get_contents($file_name);
			if($oldcont != $file_content){
				$barfile = ''.UPDIR.'/upage/'.$file_name.'';
				$this->rock->createdir($barfile);
				copy($file_name, $barfile);
			}
		}
		@$bos 			= file_put_contents($file_name,$file_content);
		return $bos;
	}
	
	/**
	*	获取zip上文件
	*/
	public function zipget($filename){
		if(!function_exists('zip_open'))return 'php未开启zip模块';
		if(!file_exists($filename))return '文件不存在';
		@$resource = zip_open($filename);
		if(!$resource)return '无法打开文件';
		$farr = array();
		while ($dir_resource = zip_read($resource)){
			if(zip_entry_open($resource,$dir_resource)){
				$file_name = zip_entry_name($dir_resource);
				$file_path = substr($file_name,0,strrpos($file_name, "/"));
				if(!is_dir($file_name) && substr($file_name,-1)!='/'){
					$file_size 		= zip_entry_filesize($dir_resource);
					$file_content 	= zip_entry_read($dir_resource, $file_size);
后面还有 45 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。