TPshop2.06上传图片到七牛云

1、 下载七牛云PHP-SDK( https://github.com/qiniu/php-sdk/releases/tag/v7.2.6

2、 在vendor文件夹中创建一个新的文件夹Qiniu

3、 将下载的SDK文件放入Qiniu文件夹中(目录结构如下)

121746_115N_3214063.png

4、 修改编辑器图片上传(上传到本地 改为 上传到七牛云)

修改的文件路径: Admin/Goods/initEditor

修改内容:$this->assign("URL_upload",U('admin/Ueditor/imageUp',array('savepath'=>'goods')));

(将imageUp 改为 qiniuUp)

5、修改 商品列表-添加商品-图片上传 (上传到本地 改为 上传到七牛云)

修改的文件路径: Admin/Uploadify/upload

修改内容:

'upload'=>U('Admin/Ueditor/imageUp',array('savepath'=>$path,'pictitle'=>'banner','dir'=>'images')),

(将imageUp 改为 qiniuUp)

6、 添加qiniuUp方法

修改的文件路径: Admin/Ueditor

use Qiniu\Auth as Auth;
use Qiniu\Storage\BucketManager;
use Qiniu\Storage\UploadManager;
public function qiniuUp(){
        vendor('Qiniu.autoload');
        // 获取表单上传文件
        $file = request()->file('Filedata');

        if(empty($file))
            $file = request()->file('upfile');


        $pictitle = I('pictitle');
        $title = htmlspecialchars($pictitle , ENT_QUOTES);

		//你的accessKey
        $AK = '********';
        //你的secretKey 
        $SK = '********';
        //上传的空间
        $BUCKET = '********'; 
        //空间绑定的域名
        $DOMAIN = '********'; 

        // 要上传图片的本地路径
        $filePath = $file->getRealPath();
        $ext = pathinfo($file->getInfo('name'), PATHINFO_EXTENSION);  //后缀
        //获取当前控制器名称
        $controllerName = 'index';
        // 上传到七牛后保存的文件名
        $key =substr(md5($file->getRealPath()) , 0, 5). date('YmdHis') . rand(0, 9999) . '.' . $ext;
        // 需要填写你的 Access Key 和 Secret Key
        $accessKey = $AK;
        $secretKey = $SK;
        // 构建鉴权对象
        $auth = new Auth($accessKey, $secretKey);
        // 要上传的空间
        $bucket = $BUCKET;
        $domain = $DOMAIN;
        $token = $auth->uploadToken($bucket);
        // 初始化 UploadManager 对象并进行文件的上传
        $uploadMgr = new UploadManager();
        // 调用 UploadManager 的 putFile 方法进行文件的上传
        list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath);
        if ($err !== null) {
            echo ["err"=>1,"msg"=>$err,"data"=>""];
        } else {
            $state = "SUCCESS";

            //返回图片的完整URL
            $return_data['url'] = 'http://'.$DOMAIN.'/'.$ret['key'];
            $return_data['state'] = $state;
            $return_data['title'] = $title;
            $this->ajaxReturn($return_data,'json');
        }
    }

 

转载于:https://my.oschina.net/u/3214063/blog/1817919

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值