php移动文件夹问题
如何移动某一个文件夹下的全部文件到php文件所在的目录?就是把文件夹里的所有文件移动到文件夹外面...
如何移动某一个文件夹下的全部文件到php文件所在的目录?
就是把文件夹里的所有文件移动到文件夹外面 展开
就是把文件夹里的所有文件移动到文件夹外面 展开
3个回答
展开全部
<?php
/*
函数作用:移动目录下所有文件和子目录到指定的路径下
函数参数:
@param string $source 需要移动文件的目录,例如:/user/local/bm001
@param string $target 文件移动的目标路径,例如/user/local
*/
function MoveFolderFiles($source,$target){
/*检查要移动的额目录是否存在*/
if(!file_exists($source))return false;
/*检查移动后的存储目录是否存在*/
if(!file_exists($target))@mkdir($target);
/*打开目录并获取文件*/
$dir =@opendir($source);
$files =array(); //用来存储目录下的文件
$dirs =array(); //用来存储目录下的子目录
if(false!=$dir){
while($item =readdir($dir)){
$itemPath =$source.'/'.$item;
if($item!='.'&&$item!='..'){
if(filetype($itemPath)=='file'){
$files[] =$item;
}elseif(filetype($itemPath)=='dir'){
$dirs[] =$item;
}
}
}
@closedir($dir);
}
/*复制文件到目标地址*/
foreach($files as $file){
@copy($source.'/'.$file,$target.'/'.$file); //拷贝文件到目标地址
@unlink($source.'/'.$file); //删除原始文件
}
/*递归处理子目录*/
if(sizeof($dirs)>0){
foreach($dirs as $childDir){
MoveFolderFiles($source.'/'.$childDir,$target.'/'.$childDir);
}
}
//删除当前目录
@rmdir($source);
}
$basePath =dirname(__FILE__);
$source =$basePath.'/uploadify';
$target =$basePath;
moveFolderFiles($source,$target);
?>
推荐于2016-01-15
展开全部
有几种情况:
1.对于文件,rename可以在不同盘符之间移动。
2.对于空文件夹,rename也可以在不同盘符之间移动,但是目标文件夹的父目录必须存在.
3.对于非空文件夹,只能在同一盘符下移动。
参考如下:
<?php
rename("D:/logs/write/theme/history","F:/logs/write/theme/history");
?>
1.对于文件,rename可以在不同盘符之间移动。
2.对于空文件夹,rename也可以在不同盘符之间移动,但是目标文件夹的父目录必须存在.
3.对于非空文件夹,只能在同一盘符下移动。
参考如下:
<?php
rename("D:/logs/write/theme/history","F:/logs/write/theme/history");
?>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
copy() rename() 都可以
追问
请问能给个例子吗?
就是移动到文件夹外面
我用rename("./upload/","./")
提示
Warning: rename(./upload/,./) [function.rename]: File exists in E:\web\APMServ5.2.6\www\htdocs\xz.php on line 46
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询