工作中会遇到一些特殊的需求,比如我们需要把某个文件下的指定的一些后缀文件进行转移到某个文件下,统一处理。今天就给大家介绍一种实现移动文件的小方法。如果有所需要可以,参考一下。希望可以对大家有抛砖引玉的功效。
我所做的是网站在导入一些表格时会留下一些导入的文件在服务器上,所以我将使用这个方法将这些导入后的文件移动到同一个文件下进行统一管理。
首先 //循环遍历找到要复制移动的文件(我直接就找当前目录下的文件)
//打开目录
if ($dh = opendir($dir)) {
//循环读取整个目录下的所有文件
while (($file = readdir($dh)) !== false) {
//windows下默认会有两个文件 “.”和”..”将这两个文件过滤掉
if($file !== ‘.’ && $file !== ‘..’){
//获取当前文件的后缀名称
$sl_ext=substr(strrchr($file, ‘.’), 1);
//判断扩展是 csv 或xls格式的文件进行处理
if($sl_ext == ‘xls’ || $sl_ext == ‘csv’){
//将文件统一移到指定文件中 移动成功自动删除原文件
//move_file(); 移动文件函数
move_file($file);
}
}
}
closedir($dh);
}
下面的函数是移动文件到指定的目录下,并删除原文件
function move_file($file){
//新建的文件夹名称
$wjj=date(‘Ymd’);
//要保存到的文件路径
$new_url=”saveFile\”.$wjj;
//判断文件是否存在
if(file_exists($new_url) == false)
{
// mkdir ()创建文件函数,需要指定创建文件的目录
$new_url=”saveFile\”.$wjj;
mkdir($new_url);
}
//要复制的 文件夹\文件名称 (一定要拼接上移动文件的名称)
$newfile=$new_url.’/’.$file;
//拷贝到新目录
$if= copy ($file,$newfile);
//如果移动成功
if($if){
//删除原路径下的文件
$t=unlink($file);
}
}
以上就是将指定文件下的文件进行移动到某个目录下,并且删除原文件的具体代码及详细的介绍,可能会有不完善。期待大家的优化谢谢。
Excellent web site you have here.. It’s hard to find high quality writing like yours these days.
I really appreciate people like you! Take care!!