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 相关文章推荐
浅谈Windows下 PHP4.0与oracle 8的连接设置
Oct 09 PHP
笑谈配置,使用Smarty技术
Jan 04 PHP
phpMyAdmin链接MySql错误 个人解决方案
Dec 28 PHP
PHP 删除一个目录及目录下的所有文件的函数代码
May 26 PHP
php自动获取字符串编码函数mb_detect_encoding
May 31 PHP
php 文件上传类代码
Aug 06 PHP
PHP对文件进行加锁、解锁实例
Jan 23 PHP
PHP数组相关函数汇总
Mar 24 PHP
php文件下载处理方法分析
Apr 22 PHP
php实现比较两个文件夹异同的方法
Jun 18 PHP
php strftime函数获取日期时间(switch用法)
May 16 PHP
PHP操作路由器实现方法示例
Apr 27 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 Class 文章
2007/04/04 PHP
php下MYSQL limit的优化
2008/01/10 PHP
百度工程师讲PHP函数的实现原理及性能分析(二)
2015/05/13 PHP
PHP使用观察者模式处理异常信息的方法详解
2019/09/24 PHP
jquery自动完成插件(autocomplete)应用之PHP版
2009/12/15 Javascript
JS中typeof与instanceof之间的区别总结
2013/11/14 Javascript
js正则表达式中test,exec,match方法的区别说明
2014/01/29 Javascript
仿JQuery输写高效JSLite代码的一些技巧
2015/01/13 Javascript
jquery.form.js实现将form提交转为ajax方式提交的方法
2015/04/07 Javascript
js实现时间显示几天前、几小时前或者几分钟前的方法集锦
2015/05/29 Javascript
详解基于Bootstrap扁平化的后台框架Ace
2015/11/27 Javascript
不得不看之JavaScript构造函数及new运算符
2017/08/21 Javascript
防止页面url缓存中ajax中post请求的处理方法
2017/10/10 Javascript
phantomjs导出html到pdf的方法总结
2017/10/19 Javascript
JavaScript实现计算多边形质心的方法示例
2018/01/31 Javascript
jQuery基于闭包实现的显示与隐藏div功能示例
2018/06/09 jQuery
vue实现标签云效果的方法详解
2019/08/28 Javascript
微信小程序 拍照或从相册选取图片上传代码实例
2019/08/28 Javascript
Vue使用vue-draggable 插件在不同列表之间拖拽功能
2020/03/12 Javascript
js实现带积分弹球小游戏
2020/07/21 Javascript
python实现查找excel里某一列重复数据并且剔除后打印的方法
2015/05/26 Python
以windows service方式运行Python程序的方法
2015/06/03 Python
python 3利用BeautifulSoup抓取div标签的方法示例
2017/05/28 Python
Python-copy()与deepcopy()区别详解
2019/07/12 Python
wxpython布局的实现方法
2019/11/01 Python
Python chardet库识别编码原理解析
2020/02/18 Python
Python如何读写二进制数组数据
2020/08/01 Python
解决使用Pandas 读取超过65536行的Excel文件问题
2020/11/10 Python
python空元组在all中返回结果详解
2020/12/15 Python
工业设计专业个人求职信范文
2013/12/28 职场文书
送餐员岗位职责范本
2014/02/21 职场文书
婚前保证书
2014/04/29 职场文书
亲子运动会的活动方案
2014/08/17 职场文书
创业计划书之个人工作室
2019/08/22 职场文书
导游词之安徽巢湖
2019/12/26 职场文书
Java 异步任务计算FutureTask
2022/04/28 Java/Android