ThinkPHP下载文件/删除文件(路径)

453 阅读1分钟
function download($url='',$savePath=''){
	$fileName=array_pop(str2arr($url,'/'));
	$localUrl='./upload/'.$savePath.'/'.$fileName;
	(new \Org\Net\Http())->curlDownload($url,$localUrl);
	return str_replace('./','/',$localUrl);
}

/**
 * 删除目录及目录下所有文件或删除指定文件
 * @param string $path 待删除目录路径
 * @param int $delDir 是否删除目录,true删除目录,false则只删除文件保留目录
 * @return bool 返回删除状态
 */
function path_delete($path, $delDir = false) {
	$result = true;
	// 对于空目录直接返回true状态
	if (! file_exists($path)) {
		return $result;
	}
	if (is_dir($path)) {
		if (! ! $dirs = scandir($path)) {
			foreach ($dirs as $value) {
				if ($value != "." && $value != "..") {
					$dir = $path . '/' . $value;
					$result = is_dir($dir) ? path_delete($dir, $delDir) : unlink($dir);
				}
			}
			if ($result && $delDir) {
				return rmdir($path);
			} else {
				return $result;
			}
		} else {
			return false;
		}
	} else {
		return unlink($path);
	}
}