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 相关文章推荐
用PHP调用数据库的存贮过程!
Oct 09 PHP
利用PHP动态生成VRML网页
Oct 09 PHP
php下过滤HTML代码的函数
Dec 10 PHP
PHP的array_diff()函数在处理大数组时的效率问题
Nov 27 PHP
PHP页面间参数传递的四种方法详解
Jun 09 PHP
解析php中的fopen()函数用打开文件模式说明
Jun 20 PHP
php教程之魔术方法的使用示例(php魔术函数)
Feb 12 PHP
PHP 面向对象程序设计(oop)学习笔记(三) - 单例模式和工厂模式
Jun 12 PHP
PHP中使用匿名函数操作数据库的例子
Nov 17 PHP
功能强大的PHP图片处理类(水印、透明度、旋转)
Oct 21 PHP
完美解决thinkphp唯一索引重复时出错的问题
Mar 31 PHP
Laravel框架定时任务2种实现方式示例
Dec 08 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 cookie 登录验证示例代码
2009/03/16 PHP
php中使用Imagick实现图像直方图的实现代码
2011/08/30 PHP
php使用mysqli向数据库添加数据的方法
2015/03/20 PHP
php文件读取方法实例分析
2015/06/20 PHP
Yii使用技巧大汇总
2015/12/29 PHP
PHP实现权限管理功能示例
2017/09/22 PHP
php设计模式之组合模式实例详解【星际争霸游戏案例】
2020/03/27 PHP
jQuery1.6 使用方法二
2011/11/23 Javascript
Javascript基础 函数“重载” 详细介绍
2013/10/25 Javascript
javascript:window.open弹出窗口的位置问题
2014/03/18 Javascript
使用正则表达式的格式化与高亮显示json字符串
2014/12/03 Javascript
关于Javascript加载执行优化的研究报告
2014/12/16 Javascript
JS留言功能的简单实现案例(推荐)
2016/06/23 Javascript
深入浅析JS Function()构造函数
2016/08/22 Javascript
详解AngularJS 过滤器的使用
2018/06/02 Javascript
JS实现点击拉拽轮播图pc端移动端适配
2018/09/05 Javascript
vue实现单一筛选、删除筛选条件
2020/10/26 Javascript
简单的通用表达式求10乘阶示例
2014/03/03 Python
使用rpclib进行Python网络编程时的注释问题
2015/05/06 Python
python 统计代码行数简单实例
2017/05/04 Python
python 借助numpy保存数据为csv格式的实现方法
2018/07/04 Python
对python修改xml文件的节点值方法详解
2018/12/24 Python
Python参数传递实现过程及原理详解
2020/05/14 Python
python3通过subprocess模块调用脚本并和脚本交互的操作
2020/12/05 Python
HTML5中视频音频的使用详解
2017/07/07 HTML / CSS
美国运动鞋和运动服零售商:Footaction
2017/04/07 全球购物
美国电子产品折扣网站:Daily Steals
2017/05/20 全球购物
荷兰本土平价百货:HEMA
2017/10/23 全球购物
施华洛世奇日本官网:SWAROVSKI日本
2018/05/04 全球购物
Annoushka英国官网:英国奢侈珠宝品牌
2018/10/20 全球购物
Diptyque英国官方网站:源自法国的知名香氛品牌
2019/08/28 全球购物
简述数组与指针的区别
2014/01/02 面试题
成绩单家长评语大全
2014/04/16 职场文书
党性教育心得体会
2014/09/03 职场文书
酒店服务员岗位职责
2015/02/09 职场文书
2015年审计人员工作总结
2015/05/26 职场文书