tp5 上传图片(自定义图片路径)

控制器调用

        /**
         * [goods_addimg 图片上传]
         * @return [type] [description]
         */
        public function addimg(){
            if (request()->isPost()) {
                $post = request()->file();
                $str = '';
                $d = "";
                $i = 0;
                //自定义路径
                $url = 'img' . DS . 'goodsimg';
                foreach ($post as $key => $value) {
                    $i++;
                    if ($i!=1) {
                        $d = ",";
                    }
                    $str .= $d.  addimg($value,$url);
                }
                return jsonData(1,'图片上传成功',$str);
            }
        }    

公共方法

/**
 * [addimg 图片上传]
 * @param  [type] $filename [description]
 * @return [type]           [description]
 */
function addimg($pic,$url){

    // 获取表单上传文件 例如上传了001.jpg
    // $file = request()->file($filename);
    // 移动到框架应用根目录/public/uploads/ 目录下
    // $file = request()->file($pic);
    if (is_array($pic)) {

        foreach($pic as $file){
            // 'img' . DS . 'goodsimg'
            // 移动到框架应用根目录/public/uploads/ 目录下
            $info = $file->validate(['size'=> 1024 * 1000 ,'ext'=>'jpg,png,gif'])->move(ROOT_PATH . 'public'. DS .$url);
            $data[] = str_replace('\', '/',$url . '/' . $info->getSaveName());
        }

        return implode(',',$data);
    } elseif (is_object($pic)) {
        $info = $pic->validate(['size'=> 1024 * 1000 ,'ext'=>'jpg,png,gif'])->move(ROOT_PATH . 'public'. DS . $url);
        if($info){
            //返回文件位置信息 如:20180620/42a79759f284b767dfcb2a0197904287.jpg
            return  str_replace('\', '/',$url . '/' . $info->getSaveName());

        }else{
            // 上传失败获取错误信息
            return false;
            // return $file->getError();
        }
        //单文件上传
    }
}
原文地址:https://www.cnblogs.com/junyi-bk/p/11401656.html