PHP上传文件及图片到七牛的方法


Posted in PHP onJuly 25, 2018

上传文件到七牛最简单的方式就是使用七牛官方最新的SDK

安装PHP SDK

composer require qiniu/php-sdk

上传文件到七牛

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

$cfg = [
 'access' => 'YOUR_ACCESS_KEY',
 'secret' => 'YOUR_SECRET_KEY',
 'bucket' => 'YOUR_BUCKET',
 'domain' => 'https://images.your_domain.com'
];

$auth = new Auth($cfg['access'], $cfg['secret']);
// 创建一个过期时间为1小时的临时上传令牌
$token = $auth->uploadToken($cfg['bucket'], null, 3600);

$filePath = "./illustration.png";

$uploadMgr = new UploadManager();
list($ret, $err) = $uploadMgr->putFile($token, null, $filePath);
if($err !== null) {
  $this->err = $err;
} else {
  echo $cfg['domain'] . '/' . $ret['key'];
}

php向七牛上传base64编码的图片

与大家分享一下我的代码:

<?php
require_once 'vendor/autoload.php';
header('Access-Control-Allow-Origin:*');

use Qiniu\Auth;

$bucket = '要上传的空间名';
$accessKey = '你的accessKey';
$secretKey = '你的secretKey';
$auth = new Auth($accessKey, $secretKey);
$upToken = $auth->uploadToken($bucket, null, 3600);//获取上传所需的token


function request_by_curl($remote_server,$post_string,$upToken) { 

 $headers = array();
 $headers[] = 'Content-Type:image/png';
 $headers[] = 'Authorization:UpToken '.$upToken;
 $ch = curl_init(); 
 curl_setopt($ch, CURLOPT_URL,$remote_server); 
 //curl_setopt($ch, CURLOPT_HEADER, 0);
 curl_setopt($ch, CURLOPT_HTTPHEADER ,$headers);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
 //curl_setopt($ch, CURLOPT_POST, 1);
 curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string);
 curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
 curl_setopt($ch, CURLOPT_TIMEOUT, 30);
 $data = curl_exec($ch); 
 curl_close($ch); 
 
 return $data; 
} 
$str="base64编码的字符串";
echo "<pre>";
echo request_by_curl('http://upload.qiniu.com/putb64/-1',$str,$upToken);
echo "</pre>";

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
通过ICQ网关发送手机短信的PHP源程序
Oct 09 PHP
不用数据库的多用户文件自由上传投票系统(3)
Oct 09 PHP
PHP分页显示制作详细讲解
Dec 05 PHP
使用php实现截取指定长度
Aug 06 PHP
php通过数组实现多条件查询实现方法(字符串分割)
May 06 PHP
thinkPHP实现瀑布流的方法
Nov 29 PHP
php简单实现无限分类树形列表的方法
Mar 27 PHP
PHP正则表达式之捕获组与非捕获组
Nov 06 PHP
XHProf报告字段含义的解析
May 17 PHP
php判断用户是否关注微信公众号
Jul 22 PHP
PHP简单实现遍历目录下特定文件的方法小结
May 22 PHP
PHP编译configure时常见错误的总结
Aug 17 PHP
详解PHP版本兼容之openssl调用参数
Jul 25 #PHP
PHP实现的多维数组去重操作示例
Jul 21 #PHP
php实现生成PDF文件的方法示例【基于FPDF类库】
Jul 21 #PHP
记录Yii2框架开发微信公众号遇到的问题及解决方法
Jul 20 #PHP
ThinkPHP 3使用OSS的方法
Jul 19 #PHP
php命令行写shell实例详解
Jul 19 #PHP
php工具型代码之印章抠图
Jul 18 #PHP
You might like
PHP 错误之引号中使用变量
2009/05/04 PHP
PHP设计模式之注册树模式分析
2018/01/26 PHP
swoole_process实现进程池的方法示例
2018/10/29 PHP
如何重写Laravel异常处理类详解
2020/12/20 PHP
JavaScript中的事件处理
2008/01/16 Javascript
JQuery Tips(3) 关于$()包装集内元素的改变
2009/12/14 Javascript
有关于JS辅助函数inherit()的问题
2013/04/07 Javascript
解析window.open的使用方法总结
2013/06/19 Javascript
input标签内容改变的触发事件介绍
2014/06/18 Javascript
JS上传组件FileUpload自定义模板的使用方法
2016/05/10 Javascript
15个值得开发人员关注的jQuery开发技巧和心得总结【经典收藏】
2016/05/25 Javascript
详解使用vscode+es6写nodejs服务端调试配置
2017/09/21 NodeJs
微信小程序实现时间预约功能
2018/11/27 Javascript
JavaScript实现字符串与HTML格式相互转换
2020/03/17 Javascript
解决antd 下拉框 input [defaultValue] 的值的问题
2020/10/31 Javascript
VUE+Element实现增删改查的示例源码
2020/11/23 Vue.js
[01:00]选手抵达华西村 整装待发备战2016国际邀请赛中国区预选赛
2016/06/25 DOTA
[44:10]2018DOTA2亚洲邀请赛 4.5 淘汰赛 EG vs VP 第一场
2018/04/06 DOTA
Python实现九宫格式的朋友圈功能内附“马云”朋友圈
2019/05/07 Python
django基础学习之send_mail功能
2019/08/07 Python
基于python实现语音录入识别代码实例
2020/01/17 Python
keras获得某一层或者某层权重的输出实例
2020/01/24 Python
在pytorch中实现只让指定变量向后传播梯度
2020/02/29 Python
Python页面加载的等待方式总结
2021/02/28 Python
HTML5 微格式和相关的属性名称
2010/02/10 HTML / CSS
世界上最大的汽车共享网站:Zipcar
2017/01/14 全球购物
校园达人秀策划书
2014/01/12 职场文书
商场活动策划方案
2014/01/24 职场文书
静心口服夜广告词
2014/03/20 职场文书
博士毕业生自我鉴定范文
2014/04/13 职场文书
关爱留守儿童倡议书
2014/04/15 职场文书
搞笑车尾标语
2014/06/23 职场文书
骨干教师事迹材料
2014/12/17 职场文书
南极大冒险观后感
2015/06/05 职场文书
巴黎圣母院观后感
2015/06/10 职场文书
2015年三好一满意工作总结
2015/07/24 职场文书