使用PHP把图片上传到七牛云

先从官网下载SDK,然后新建一个文件,里面包括上传,下载,删除

<?php
header("Content-Type:text/html; charset=utf8");
require_once __DIR__ . './autoload.php';

// 引入鉴权类
use Qiniu\Auth;
use Qiniu\Storage\BucketManager;

// 引入上传类
use Qiniu\Storage\UploadManager;

// 需要填写你的 Access Key 和 Secret Key
$accessKey = '-********;
$secretKey = '******';

// 构建鉴权对象
$auth = new Auth($accessKey, $secretKey);

/* 上传 */
//////////////////////////////////////////////////////////////////////////

// 要上传的空间
$bucket = '****';

//自定义上传回复的凭证 返回的数据
$returnBody = '{"key":"$(key)","hash":"$(etag)","fsize":$(fsize),"bucket":"$(bucket)","name":"$(fname)"}';
$policy = array(
    'returnBody' => $returnBody,

);
//token过期时间
$expires = 3600;

// 生成上传 Token
$token = $auth->uploadToken($bucket, null, $expires, $policy, true);

// 要上传文件的本地路径
$filePath = './img-08.jpg'; // 上传到七牛后保存的文件名,可拼接 

$key = 'img-08.jpg'; // 初始化 UploadManager 对象并进行文件的上传。

$uploadMgr = new UploadManager(); // 调用 UploadManager 的 putFile 方法进行文件的上传。

list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath);

// echo "\n====> putFile result: \n";

if ($err !== null) {

var_dump($err);
}
else {

var_dump($ret);
}

////////////////////////////////////////////////////////////////////////////// /* 下载 */ //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
//私有空间中的外链 http://<domain>/<file_key>

$baseUrl = 'p0484dxn0.bkt.clouddn.com/img-08.jpg';

// 对链接进行签名 $signedUrl = $auth->privateDownloadUrl($baseUrl);

echo $signedUrl;

//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> /* 删除 */ //==============================================================================================
/*
$config = new \Qiniu\Config();
// 初始化BucketManager
$bucketMgr = new BucketManager($auth,$config);
//你要测试的空间, 并且这个key在你空间中存在
$bucket = 'richie'; $key = 'img-08.jpg';
//删除$bucket 中的文件 $key
$err = $bucketMgr->delete($bucket, $key);
var_dump($err);
if ($err !== null) {
var_dump($err);
} else {
var_dump('删除成功');
}
*/

//===============================================================================================
?>

 上传大文件可参考 基于php大文件分片上传至七牛云,支持断点续传,带进度条

posted @ 2017-04-22 21:39  下页、再停留  阅读(3945)  评论(0编辑  收藏  举报