请教:CI如何创建多级目录,是用递归吗?如何实现啊
创建多级目录的问题,文件上传的时候,文件不存在会出错,怎么才能根据路径创建相应的目录呢,递归函数也不知道怎么改,怎么用,请教大家看看怎么弄
function createFolder($path){
if(!file_exists($path)) {
ctreateFolder(dirname($path));//这里要怎么改写啊
mkdir($path,0700);
}
}
方法中调用方法,我用$this-> self::,放在控制器,模型中都不行,该如何实现呢 你看看这个能用不。
http://home.phpchina.com/space.php?uid=100535&do=blog&id=183467 本帖最后由 phptree 于 2012-2-25 16:02 编辑
huboo82 发表于 2012-2-25 15:47 static/image/common/back.gif
你看看这个能用不。
http://home.phpchina.com/space.php?uid=100535&do=blog&id=183467
谢谢大大,函数我明白,就是不知道放在CI里如何用,因为用到递归,函数里面的函数,在ci下调用显示错误 另一个
function create_dirs($dir, $mode='0777')
{
if(!is_dir($dir)){
$this->create_dirs(dirname($dir), $mode);
mkdir($dir, $mode);
}
return true;
}
地址:http://laiguowei2004.blog.163.com/blog/static/3682900020111161042247/
function makedir($dir_name, $mode = 0777) {
$dir_name = str_replace ( "\\", "/", $dir_name );
$dir_name = preg_replace ( "#(/" . "/+)#", "/", $dir_name );
if (is_dir ( $dir_name ) !== false) {
return true;
}
$dir_name = explode ( "/", $dir_name );
$dirs = '';
foreach ( $dir_name as $dir ) {
if (trim ( $dir ) != '') {
$dirs .= $dir . "/";
if (is_dir ( $dirs ) == false && @mkdir ( $dirs, $mode ) === false) {
return false;
} else {
}
}
}
return true;
}
提供一个函数。希望可以用得上 php 创建目录的函数支持递归。。。不用自己写,大家要多看PHP手册呀。
http://php.net/manual/en/function.mkdir.php
太喜欢编程了!
mkdir($path, 0700, true);
第三个是递归参数,缺省是false。
英文版也许不受欢迎。
http://www.php.net/manual/zh/function.mkdir.php
sdink 发表于 2012-2-25 20:41 static/image/common/back.gif
提供一个函数。希望可以用得上
真好。学到个东西。感谢
页:
[1]