热搜:NVER 

《PHP-自定义创建目录资料方法》-如果目录已存在,该目录必须为空才可继续创建

2024-04-25 23:28:02
 《PHP-自定义创建目录资料方法》-如果目录已存在,该目录必须为空才可继续创建

《PHP---自定义创建目录文件方法》----如果目录已存在,该目录必须为空才可继续创建

BUG:

如果目录已存在,该目录必须为空才可继续创建

<?php /*
	定义的path目录
	$path = "C:/aaa/bbb/ccc/ddd/eee";
	调用makeDir函数自动生成目录
	makeDir($path);
	$path = "C:/aaa/bbb/ccc/ddd/eee.txt";
	调用makeDir函数自动生成目录在ddd目录下有一eee.txt的文件
	makeDir($path,true);
	参数说明:
		$path需要生成的路径,前面什么都不加默认生成在本目录下
		例如:/aaa/bbb/ccc/ddd/eee
		$hasfile是否生成文件,非零为生成文件
		文件名在path中包含。
	*/	

	function makeDir($path, $hasfile){
		//标记是否生成最后的文件,控制循环的次数
		$falg = 0;
		if ($hasfile){
			$falg = 1;
		}
		
		//将path按'/'分割
		$dirs = split('/', $path);

		$dircount = count($dirs);
		$makedir = $dirs[0];
		for ($i = 1; $i < $dircount - $falg; $i++){
			//判断生成目录的位置
			if (!strcmp($makedir,"")){
				$makedir = ".";
			}
			//目录名称
			$makedir = $makedir."/".$dirs[$i];
			//判断是否已含有本目录
			if (is_dir($makedir)){
				echo $makedir."目录已存在
"; continue; } //创建目录 if (mkdir($makedir)){ echo $makedir."--目录创建成功
"; } } //创建文件 if ($hasfile){ $filename = $makedir."/".$dirs[$dircount-1]; //判断文件是否存在 if (!is_file($filename)){ if (touch($filename)){ echo "文件创建成功
"; } }else{ echo "文件已存在
"; } } ?>