php通过递归 创建文件存储目录

smarty框架内基于递归做的文件夹创建,非常好用

function mkdirs($pathname , $mode = 0755) {
        is_dir(dirname($pathname)) || $this->mkdirs(dirname($pathname), $mode);
        return is_dir($pathname) || @mkdir($pathname, $mode);
    }
 

上面这段可能不太容易看懂,我稍微改下下

function mkdirs($pathname , $mode = 0755) {
        if(!is_dir(dirname($pathname))){
		$this->mkdirs(dirname($pathname), $mode);
	}else{
		return is_dir($pathname) || @mkdir($pathname, $mode);
	}
    }


下面这个是我做的基于ftp远程传输的

function mkdirs($pathname){
	if( !ftp_chdir($this->conn,dirname($pathname)) ){
		$this->mkdirs(dirname($pathname));
	}
	else{
		return ftp_chdir($this->conn,$pathname) || ftp_mkdir($this->conn,$pathname);
	}
        
    }

$pathname是要存储的源文件地址,如  /data/t/0000/51/   123.png

dirname() 函数每次执行删除$pathname一次 '/' 后面的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值