php循环建立新的文件根据文件名移动文件到指定文件夹修改文件名称

来源:互联网 发布:淘宝一键下单 编辑:程序博客网 时间:2024/06/06 01:47

写一个php文件放到你想要批量处理的文件目录下,运行文件即可完成
注意:确认你的文件名是不是时间戳,还有文件里的php文件,要加上判断!不要误删了!

<?php     set_time_limit(0); //忽略php.ini设置的脚本运行时间限制     $q_array = my_dir('./');    $q_array = str_replace('.//','',$q_array);    $a = explode(",",$q_array);    echo "文件目录中的文件数组</br>";    var_dump($a);    forEd($a);//修改文件名    //循环建立新的文件根据时间戳移动文件到指定文件夹修改名称    function forEd($arr){        $dir = array();        foreach($arr as $v){            $dir[] = substr($v,0,6);        }        foreach($arr as $v){            $newDir = substr($v,0,6);                foreach($dir as $v2){                    if($v2 == $newDir){                        mk_dir($newDir);                        @!copy($v,$newDir.'/'.substr($v,6));                    }                }        }        return true;    }    //获取所有的文件返回数组    function my_dir($dir) {        $files = array();        if(@$handle = opendir($dir)) { //注意这里要加一个@,不然会有warning错误提示:)            while(($file = readdir($handle)) !== false) {                if($file != ".." && $file != ".") { //排除根目录;                    if(is_dir($dir."/".$file)) { //如果是子文件夹,就进行递归                        $files[$file] = my_dir($dir."/".$file);                    } else { //不然就将文件的名字存入数组;                        $files[] = $dir.'/'.$file;                    }                }            }            closedir($handle);            $files = str_replace('..', '',str_replace(',..', ',',implode(",",$files)));            return $files;        }    }    function mk_dir($dir, $mode = 0755)    {        if (is_dir($dir) || @mkdir($dir,$mode)) return true;        if (!mk_dir(dirname($dir),$mode)) return false;        return @mkdir($dir,$mode);    } 
1 0
原创粉丝点击