PHP上传文件、图片

PHP上传文件、图片

<?php
namespace App\Http\Controllers;

class UploadsController extends Controller {
    
    
    //获取文件夹下文件数量
    public function getFileNumber($url){
    
    
        $num=0;
        $arr = glob($url);
        foreach ($arr as $v) {
    
    
            if(is_file($v)) {
    
    
                $num++;
            }
            else {
    
    
                $num+=$this->getFileNumber($v."/*");
            }
        }
        return $num;
    }
    public function moveFileExploit($filename){
    
    
        $old_path = '/var/www/xiaocb/'.$filename;
        $newName = time().'-'.$filename;
        $nowDay = date('Y-m-d');
        $new_path = '/uploads/images/'.$nowDay.'/'.$newName;
        //如果没有文件夹 则自动创建
        if(!is_dir($_SERVER['DOCUMENT_ROOT'].'/uploads/images/'.$nowDay)){
    
    
            mkdir($_SERVER['DOCUMENT_ROOT'].'/uploads/images/'.$nowDay,0777,true);//创建年+月的文件夹权限为最高
        }
        rename($old_path,$_SERVER['DOCUMENT_ROOT'].$new_path);
        return $new_path;
    }
    public function uploadsiImgMobile($filename)
    {
    
    
        if(strpos($filename,'tmp') !== false){
    
    
            $path = $_SERVER['DOCUMENT_ROOT'].$filename;
            $exp = explode("/",$filename);
            $img = $exp[4];
            $nowDay = date('Y-m-d');
            $new_path = '/uploads/images/'.$nowDay.'/'.$img;
            //如果没有文件夹 则自动创建
            if(!is_dir($_SERVER['DOCUMENT_ROOT'].'/uploads/images/'.$nowDay)){
    
    
                mkdir($_SERVER['DOCUMENT_ROOT'].'/uploads/images/'.$nowDay,0777,true);
            }
            rename($path,$_SERVER['DOCUMENT_ROOT'].$new_path);
        }else{
    
    
            $new_path = $filename;
        }
        return $new_path;
    }
    public function uploadsvideo($filename)
    {
    
    
        if(strpos($filename,'tmp') !== false){
    
    
            $path = $_SERVER['DOCUMENT_ROOT'].$filename;
            $exp = explode("/",$filename);
            $img = $exp[4];
            $nowDay = date('Y-m-d');
            $new_path = '/uploads/video/'.$nowDay.'/'.$img;
            //如果没有文件夹 则自动创建
            if(!is_dir($_SERVER['DOCUMENT_ROOT'].'/uploads/video/'.$nowDay)){
    
    
                mkdir($_SERVER['DOCUMENT_ROOT'].'/uploads/video/'.$nowDay,0777,true);
            }
            rename($path,$_SERVER['DOCUMENT_ROOT'].$new_path);
        }else{
    
    
            $new_path = $filename;
        }
        return $new_path;
    }
}

调用:

$Uploads = new UploadsController();
$file_path = $Uploads->uploadsiImgMobile($v['pic_front'][$kn]),  

文件操作方法:

 $new_purchase_file= str_replace('/tmp/','/files/',$request->purchase_file);
 //如果没有文件夹 则自动创建
 //$_SERVER['DOCUMENT_ROOT'] 表示从根目录/开始
 $nowDay = date('Y-m-d');
 if(!is_dir($_SERVER['DOCUMENT_ROOT'].'/uploads/files/'.$nowDay)){
    
    
       mkdir($_SERVER['DOCUMENT_ROOT'].'/uploads/files/'.$nowDay,0777,true);//创建年+月的文件夹权限为最高
 }

copy($_SERVER['DOCUMENT_ROOT'].$request->purchase_file, $_SERVER['DOCUMENT_ROOT'].$new_purchase_file);
unlink($_SERVER['DOCUMENT_ROOT'].$request->purchase_file); //删除tmp目录下的文件


$new_path = '/uploads/images/'.$nowDay.'/'.$newName;

rename($old_path,$_SERVER['DOCUMENT_ROOT'].$new_path);

$new_purchase = str_replace('/tmp/','/images/',$pictures_file);//图片路径

猜你喜欢

转载自blog.csdn.net/xcbzsy/article/details/113175861