上传文件到七牛最简单的方式就是使用七牛官方最新的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' => 'http://www.yuncode.net' |
]; |
|
$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>" ; |
初级程序员
by: 云代码会员 发表于:2019-06-02 14:54:08 顶(0) | 踩(0) 回复
dadasd
回复评论