>php教程 >PHP源码 >建立url或者路径path的文件夹

建立url或者路径path的文件夹

PHP中文网
PHP中文网원래의
2016-05-25 17:12:501244검색

php中文网

/***
	建立url或者路径path的文件夹,并将url里的文件夹设置为可写,
	如果不指定路径则在当前目录建立文件夹,否则在设置路径里建立文件夹。
	$url : 可为任意目录形式url,如'1/2/3/4/'、'1/2/3/4'、'http://www.5jiuai.com/1/2/3/43/4/'
	$path : 可为任意形式的path,如'd:/test'、'd:\test'
	返回 : 路径目录
	例子:
	$url = 'http://www.5jiuai.com/1/2/3/43/4/';
	$path =  'd:/test';
	echo create_folder($url,'d:/test');
*/		
function create_folder($url,$path=''){

	$path_str = !empty($path) ? $path : realpath(dirname(__FILE__));	 //当 $c_path==''时,取当前目录

	$folder_path_str  = preg_match('/\\\/i',$path_str) ?  preg_replace('/\\\/i','/',$path_str) : $path_str;	 //将路径里的'\'全部转为'/' 
	$folder_path_arr  = preg_match('/\//i',$folder_path_str) ? explode('/',$folder_path_str) : array();	 //将路径分割为数组


	$no_http_url = preg_match('/http:\/\//i',$url) ? preg_replace('/http:\/\//i','',$url) : $url;	//去除url中的'http://' 字符 
	$no_http_url = preg_match('/\\\/i',$no_http_url) ? preg_replace('/\\\/i','/',$no_http_url) : $no_http_url; //将url里的'\'全部转为'/' 
	$folder_url_arr  = preg_match('/\//i',$no_http_url) ? explode('/',$no_http_url) : array();	//将url分割为数组

	$path_arr = @array_merge($folder_path_arr,$folder_url_arr);	 //合并数组

	$path_way = '';
	foreach($path_arr as $key => $val){
		if(empty($val)) continue;		   //如果$val为空值,则跳转到下一步

		$path_way .= $val.'/';

		if(is_dir($path_way)) continue;	    //如果目录已经存在,则跳转到下一步

		@mkdir($path_way);
		if(in_array($val,$folder_url_arr)) @chmod($path_way,0777);	  //将url里的目录设置为可写
	}
	return 	$path_way;
}

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.