tp5 PHP 7牛上传

该文章演示了如何在PHP环境中集成七牛云存储SDK,通过源码包引入并创建UploadManager对象来实现文件上传。代码中涉及到了Autoload.php的加载,Auth类用于签名验证,以及UploadManager的putFile方法来上传文件到指定的bucket。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、找到官方网址下载SDK 对象存储 - 七牛开发者中心

 

 2、我下载的是源码包,按照源码包的方式引入,放在了同级目录

<?php

require 'path_to_sdk/autoload.php';

 3、按照命名空间引入所需

<?php
namespace *******\qiniu;

use think\Controller;



require 'path_to_sdk/autoload.php';

use Qiniu\Auth;
use Qiniu\Storage\UploadManager;

class Qiniu extends Controller
{

   
    public functionUploadFile($hookData){

        $addon_config = $hookData;
        $bucket = $addon_config['kj'];

        // $file = request()->file('file');
        $ext = $hookData['file']['image_filed']['name'];//上传七牛云后保存的文件名
        $filePath = $hookData['file']['image_filed']['tmp_name'];//要上传图片的本地路径

        $accessKey = $addon_config['key'];
        $secretKey = $addon_config['skey'];

        // 初始化签权对象
        $auth = new Auth($accessKey, $secretKey);

        
        // 生成上传Token
        $token = $auth->uploadToken($bucket);
        // 构建 UploadManager 对象
        $uploadMgr = new UploadManager();

         list($ret, $err) = $uploadMgr->putFile($token, $ext, $filePath);
        if ($ret) {
            //6.上传成功返回图片外链地址
            // return json(['code' => 200, 'msg' => '上传成功', 'data' => 
            // "rxz10bfbz.hn-bkt.clouddn.com/$ext"]);
            $path = $addon_config['yuming'].'/'.$ext;
            return array('code' => 0, 'msg' => "上传成功", 'path' => $path, 'file_name' => $ext, 'hookdata' => $hookData);
        } else {
            return array('code' => 10301,'msg' => '上传失败,检查配置');
        }

    }

}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值