<?php

//文件操作类
class File{
	//文件指针
	private $File;
	//系统根目录
	public $SysDir = SITE_DIR;
	//文件内容
	private $FileContent;
	//创建目录
	public function CreateDir($dirname){
		echo '';
	}
	//创建多级目录
	public function CreateDirs($dirsname){
		if(mkdir($this->SysDir.$dirsname, 0777, true)){
			$return = true;
		}
		else{
			$return = false;
		}
		return $return;
	}
	//创建文件
	public function CreateFile($FileName){
		$file = fopen($this->SysDir.$FileName, "w+");
		if($file == false){
			$return = false;
		}
		else{
			$return = true;
			$this->File = $file;
		}
		return $return;
	}
	//打开并读取文件内容
	public function ReadFileContent($filename, $mode = "r+"){
		$this->File = fopen($this->SysDir.$filename, $mode);
		$this->FileContent = fread($this->File, filesize($this->SysDir.$filename));
		return $this->FileContent;
	}
	//写入文件内容
	public function ModifyFileContent($Content){
		$w = fwrite($this->File, $Content);
		if($w == false){
			$return = false;
		}
		else{
			$return = true;
		}
		return $return;
	}
	
	/**
	 * 删除目录及目录下所有文件或删除指定文件
	 * @param str $path   待删除目录路径
	 * @param int $delDir 是否删除目录，1或true删除目录，0或false则只删除文件保留目录（包含子目录）
	 * @return bool 返回删除状态
	 */
	public function delDirAndFile($path, $delDir = FALSE) {
		$path = $this->SysDir.$path;
		$handle = opendir($path);
		if ($handle) {
			while (false !== ( $item = readdir($handle) )) {
				if ($item != "." && $item != "..")
					is_dir("$path/$item") ? delDirAndFile("$path/$item", $delDir) : unlink("$path/$item");
			}
			closedir($handle);
			if ($delDir)
				return rmdir($path);
		}else {
			if (file_exists($path)) {
				return unlink($path);
			} else {
				return FALSE;
			}
		}
	}
	//关闭打开的文件
	public function CloseFile(){
		if(fclose($this->File)){
			$return = true;
		}
		else{
			$return = false;
		}
		return $return;
	}
}

?>