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

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

WBOY
WBOYOriginal
2016-06-13 13:09:511062browse

《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."目录已存在<br/>";
				continue;
			}
			//创建目录
			if (mkdir($makedir)){
				echo $makedir."--目录创建成功<br>";
			}
		}
		
		//创建文件
		if ($hasfile){
			$filename = $makedir."/".$dirs[$dircount-1];
			//判断文件是否存在
			if (!is_file($filename)){
				if (touch($filename)){
					echo "文件创建成功<br>";
				}
				}else{
					echo "文件已存在<br>";
				}
		}
?>


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn