Beispiel #1
0
	function ReadDir($dir, $children = 0)
	{
		if(is_dir($dir) === false)Return false;;
		$dir = rtrim(str_replace("\\", "/", $dir), "/") ;
		$dirfp = @opendir($dir);
		if ($dirfp === false)
		{
			trigger_error("{$dir}目录名不存在或者无效,请检查您的目录设置!<br>", E_USER_NOTICE);
			Return false;
		}
		while (false !== ($file = @readdir($dirfp)))
		{
			if ($file != '.' and $file != '..')
			{
				$abspath = $dir . '/' . $file;
				if (is_file($abspath) !== false)
				{
					$files[] = $abspath ;
				}
				if(is_dir($abspath) !== false)
				{
					if ($children == '1')
					{
						$files = @array_merge((array) $files, (array) IoHandler::ReadDir($abspath, $children));
					}
					else
					{
						$files[] = $abspath ;
					}
				}
			}
		}
		@closedir($dirfp);
		return (array) $files;
	}
Beispiel #2
0
 function ReadDir($dir, $children = 0)
 {
     if (!is_dir($dir) || !($dp = @opendir($dir))) {
         trigger_error("目录 {$dir} 不存在或者没有相应权限,请检查<br>", E_USER_NOTICE);
         return false;
     }
     while (false !== ($file = readdir($dp))) {
         if ($file != '.' and $file != '..') {
             $abspath = $dir . '/' . $file;
             if (is_file($abspath) !== false) {
                 $files[] = $abspath;
             }
             if (is_dir($abspath) !== false) {
                 if ($children == '1') {
                     $files = array_merge((array) $files, (array) IoHandler::ReadDir($abspath, $children));
                 }
             }
         }
     }
     closedir($dp);
     return (array) $files;
 }
Beispiel #3
0
	function ImageThumbRebuild()
	{
				$load = new Load();
		$load->lib('io');
		$o_dirs = IoHandler::ReadDir(IMAGE_PATH.'product/');
		$dirs = array();
		foreach ($o_dirs as $i => $dir)
		{
			if (preg_match('/product\/\d{4}-\d{2}-\d{2}/', $dir))
			{
				$dirs[] = $dir;
			}
		}
		$thumbwidth = $this->Config['thumbwidth'];
		$thumbheight = $this->Config['thumbheight'];
				$op = $_GET['op'];
		if ($op == 'run')
		{
			$od = $_GET['od'];
			$dir = $dirs[$od];
			$files = IoHandler::ReadDir($dir);
			foreach ($files as $i => $src_file)
			{
				$dst_file = str_replace('/product/', '/product/s-', $src_file);
				resize_image($src_file, $dst_file, $thumbwidth, $thumbheight);
			}
			echo '更新了目录[ '.$dir.' ],有[ <b>'.count($files).'</b> ]张缩略图被生成!';
			return;
		}
		$cronLength = count($dirs);
		include(handler('template')->file('@admin/tttuangou_imagethumb_rebuild'));
	}
Beispiel #4
0
	function DoDelete()
	{
		$this->CheckAdminPrivs('dbexport');
		$backupdir = $this->Post['backupdir'];
		$delete=$this->Post['delete'];
		if(is_array($delete)) {
			$dir = ROOT_PATH.'backup/'.$backupdir.'/';
			foreach($delete as $filename) {
				@unlink($dir.str_replace(array('/', '\\'), '', $filename));
			}

			
			if ($backupdir && false!==strpos($dir,'/db/')) {
				$load = new Load();
				$load->lib('io');
				$IoHandler = new IoHandler();
				$f_list = $IoHandler->ReadDir($dir,1);
				if(count($f_list) < 3) {

					$d = true;
					foreach ($f_list as $f) {
						if ((filesize($f) > 0) || ((basename($f) != 'index.htm') && (basename($f) != 'index.html'))) {
							$d = false;
							break;
						}
					}

					if ($d) {
						$IoHandler->RemoveDir($dir);
					}
				}
			}

			$this->Messager('指定备份文件成功删除',null);
		} else {
			$this->Messager('您没有选择要删除的备份文件,请返回');
		}
	}