zoukankan      html  css  js  c++  java
  • laravel 数据库里的图片重命名

    现在有这样一个需求,需要把数据库里上传的文件全部重命名一个,使用如下方法可以快速处理

    ini_set("max_execution_time", 0);
    /*使用chunk分块处理数据*/
           DB::table('xxx')->orderby('id')->where('imageurl','<>','')->chunk(100,function($rows)
            {
               // $list=[];
                foreach ($rows as $row)
                {
                    $fileInfo=pathinfo($row->imageurl);
                    $newFileName='.'.$fileInfo['dirname'].'/'.$fileInfo['filename'].time().'.'.$fileInfo['extension'];
                    echo '正在处理:'.$newFileName.' id:'.$row->id.'<br/>';
    
                    if(file_exists('.'.$row->imageurl))
                    {
                      rename('.'.$row->imageurl,$newFileName);
                    }
                    echo var_dump(['id'=>$row->id,'imageurl'=>substr($newFileName,1)]);
                    $content=ob_get_contents();
                    sleep(1);
                    DB::table('km')->where('id',$row->id)->update(['imageurl'=>substr($newFileName,1)]);
    
                }
              
    
            });

    直接重命名某目录的文件

       $list=glob('./upload/content/20200413/*');
           foreach ($list as $row){
               $fileInfo=pathinfo($row);
               $newFileName=$fileInfo['dirname'].'/'.$fileInfo['filename'].'_36'.'.'.$fileInfo['extension'];
               echo '正在处理:'.$newFileName.'<br/>';
               if(file_exists($row))
               {
                   rename($row,$newFileName);
               }
    
           }
  • 相关阅读:
    lsof命令详解
    nmap命令详解
    ss命令详解
    netstat命令详解
    ifup,ifdown命令详解
    playbook部署nginx
    cento7忘记root密码怎么办
    正确关闭selinux
    使用ssh-agent管理私钥
    gitlab中的CI
  • 原文地址:https://www.cnblogs.com/fogwang/p/12704205.html
Copyright © 2011-2022 走看看