zoukankan      html  css  js  c++  java
  • 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();
            }
            //单文件上传
        }
    }
  • 相关阅读:
    官方文档翻译-Today
    RAC & MVVM 学习资料整理
    35种常用字体
    中文字体的种类
    自言自语(三)--部分中文字体
    自言自语(二)--英文无衬线体和有衬线体
    sketch字体设置技巧(一)---通过锚点改变字体形态
    提高设计档次的8个方法
    知识汇总09~bootstrap-select在Vue中的封装
    知识汇总08~字符串截取
  • 原文地址:https://www.cnblogs.com/junyi-bk/p/11401656.html
Copyright © 2011-2022 走看看