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下PHP APACHE MYSQ完整配置
Jan 02 PHP
Fatal error: Call to undefined function curl_init()解决方法
Apr 09 PHP
破解.net程序(dll文件)编译和反编译方法
Jan 31 PHP
使用Curl进行抓取远程内容时url中文编码问题示例探讨
Oct 29 PHP
PHP加密解密类实例分析
Apr 20 PHP
php文件压缩之PHPZip类用法实例
Jun 18 PHP
PHP内核探索之解释器的执行过程
Dec 22 PHP
php添加数据到xml文件的简单例子
Sep 08 PHP
php利用imagemagick实现复古老照片效果实例
Feb 16 PHP
ThinkPHP模板标签eq if 中区分0,null,false的方法
Mar 24 PHP
laravel migrate初学常见错误的解决方法
Oct 11 PHP
Laravel 5+ .env环境配置文件详解
Apr 06 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编程最快明白(第一讲 软件环境和准备工作)
2010/10/25 PHP
dedecms中使用php语句指南
2014/11/13 PHP
PHP连接MYSQL数据库实例代码
2016/01/20 PHP
php安装ssh2扩展的方法【Linux平台】
2016/07/20 PHP
fromCharCode和charCodeAt 方法
2006/12/27 Javascript
在你的网页中嵌入外部网页的方法
2007/04/02 Javascript
Knockout数组(observable)使用详解示例
2013/11/15 Javascript
js判断url是否有效的两种方法
2014/03/04 Javascript
jquery实现仿新浪微博带动画效果弹出层代码(可关闭、可拖动)
2015/10/12 Javascript
jQuery实现带有动画效果的回到顶部和底部代码
2015/11/04 Javascript
Ext JS框架中日期函数的用法及日期选择控件的实现
2016/05/21 Javascript
jQuery提示插件qTip2用法分析(支持ajax及多种样式)
2016/06/08 Javascript
Javascript缓存API
2016/06/14 Javascript
JavaScript中函数声明与函数表达式的区别详解
2016/08/18 Javascript
JS无缝滚动效果实现方法分析
2016/12/21 Javascript
ES6概念 Symbol.keyFor()方法
2016/12/25 Javascript
vue-cli构建项目使用 less的方法
2017/10/04 Javascript
使用socket.io实现简单聊天室案例
2018/01/02 Javascript
vue引入ueditor及node后台配置详解
2018/01/03 Javascript
基于Axios 常用的请求方法别名(详解)
2018/03/13 Javascript
Node.js Express安装与使用教程
2018/05/11 Javascript
解决layui 三级联动下拉框更新时回显的问题
2019/09/03 Javascript
解决使用layui对select append元素无效或者未及时更新的问题
2019/09/18 Javascript
js实现简单的无缝轮播效果
2020/09/05 Javascript
Python实现线程池代码分享
2015/06/21 Python
Python实现计算长方形面积(带参数函数demo)
2020/01/18 Python
快速查找Python安装路径方法
2020/02/06 Python
python安装后的目录在哪里
2020/06/21 Python
python 实现aes256加密
2020/11/27 Python
英国自行车商店:AW Cycles
2021/02/24 全球购物
面向对象概念面试题(.NET)
2016/11/04 面试题
出纳员岗位责任制
2014/02/11 职场文书
淘宝店策划方案
2014/06/07 职场文书
学习十八届四中全会依法治国心得体会
2014/11/03 职场文书
2014年党风廉政工作总结
2014/12/03 职场文书
暑期家教宣传单
2015/07/14 职场文书