【Thinkphp】图片上传
博客专区 > RablePHP 的博客 > 博客详情
【Thinkphp】图片上传
RablePHP 发表于9个月前
【Thinkphp】图片上传
  • 发表于 9个月前
  • 阅读 19
  • 收藏 0
  • 点赞 0
  • 评论 0

移动开发云端新模式探索实践 >>>   


/**
 * 上传图片
 * @param string $key   啦啦啦
 * @param string $path
 * @param string $filename
 * @param bool $thumb
 * @return array('status'=>1,'msg'=>'上传成功','data'=>$info)
 */
function uploadImg($key = '',$path = 'uploads/',$filename = '',$thumb = false){
    $upload = new \Think\Upload();
    $upload->__set('maxSize',5000000);
    $upload->__set('exts',array('jpg', 'gif', 'png', 'jpeg'));
//    $upload->__set('rootPath','');
    $upload->__set('savePath',$path);
    $upload->__set('saveName',$filename);
    $upload->__set('subName','');
    $upload->uploadReplace = true;

    //创建目录
    if ( ! file_exists($path)){
        mkdir($path,0777,true);
    }

    if (!$key){
        $info = $upload->upload();
    }else{
        $info = $upload->uploadOne($_FILES[$key]);
    }

    if(!$info) {// 上传错误提示错误信息
        $error = $upload->getError();
    }else{// 上传成功

    }
    if ($error){
        return array('status'=>0,'msg'=>$error,'data'=>array());
    }
    //图片的位置
    $info['path'] = 'uploads'.$info['savepath'].$info['savename'];

    if ($thumb){
        $image = new \Think\Image();
        $image->open($info['path']);
        // 按照原图的比例生成一个最大为150*150的缩略图并保存为thumb.jpg
        if(!file_exists($path.'x1/')){
            mkdir('./uploads/'.$path.'x1/',0777);
        }

        if(!file_exists($path.'x2/')){
            mkdir('./uploads/'.$path.'x2/',0777);
        }
        $image->thumb(150, 150)->save('./uploads'.$info['savepath'].'x1/'.$info['savename']);
        $info['path_x1'] = 'uploads'.$info['savepath'].'x1/'.$info['savename'];

        $image->open($info['path']);
        $image->thumb(350, 350)->save('./uploads'.$info['savepath'].'x2/'.$info['savename']);
        $info['path_x2'] = 'uploads'.$info['savepath'].'x2/'.$info['savename'];
    }
    return array('status'=>1,'msg'=>'上传成功','data'=>$info);
}
  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 15
博文 48
码字总数 12000
×
RablePHP
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: