TPshop2.06上傳圖片到七牛雲

一、 下載七牛雲PHP-SDK( https://github.com/qiniu/php-sdk/releases/tag/v7.2.6php

二、 在vendor文件夾中建立一個新的文件夾Qiniuhtml

三、 將下載的SDK文件放入Qiniu文件夾中(目錄結構以下)git

四、 修改編輯器圖片上傳(上傳到本地 改成 上傳到七牛雲)github

修改的文件路徑: Admin/Goods/initEditorajax

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

(將imageUp 改成 qiniuUp)dom

五、修改 商品列表-添加商品-圖片上傳 (上傳到本地 改成 上傳到七牛雲)編輯器

修改的文件路徑: Admin/Uploadify/uploadthis

修改內容:url

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

(將imageUp 改成 qiniuUp)

六、 添加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');
        }
    }
相關文章
相關標籤/搜索