require_once("qiniu/io.php");
require_once("qiniu/rs.php");
require_once("qiniu/fop.php");
$accessKey = 'M96SigayyYQR0VdlFir96pGKmf3NZ5YPTmF0lz**';
$secretKey = 'BlGJG8cH2Sgjqjrq3_YAvouxa-DRIAr9eMKWmb**';
/**
*qiniu API 操作类
*/
class qiniu
{
static $client;
static $bucket;
function __construct($accessKey,$secretKey)
{
Qiniu_setKeys($accessKey, $secretKey);
self::$client = new Qiniu_MacHttpClient(null);
}
function bucket($bucket)
{
self::$bucket=$bucket;
return $this;
}
//查看单个文件属性信息
function info($file)
{
list($ret,$err)=Qiniu_RS_Stat(self::$client, self::$bucket,$file);//返回文件信息
return $err?$err:$ret;
}
//复制单个文件
function copys($file,$newfile)
{
$err = Qiniu_RS_Copy(self::$client, self::$bucket, $file, self::$bucket,$newfile);
return $err?$err:"success";
}
//移动单个文件
function move($file,$newfile)
{
$err = Qiniu_RS_Move(self::$client, self::$bucket,$file, self::$bucket,$newfile);
return $err?$err:"success";
}
//删除单个文件
function delete($file)
{
$err = Qiniu_RS_Delete(self::$client, self::$bucket,$file);
return $err?$err:"success";
}
function upload_str($file,$content)
{
$putPolicy = new Qiniu_RS_PutPolicy(self::$bucket);
$upToken = $putPolicy->Token(null);
list($ret, $err) = Qiniu_Put($upToken, $file, $content, null);
return $err?$err:$ret;
}
//文件上传
function upload($filename,$filepath)
{
$putPolicy = new Qiniu_RS_PutPolicy(self::$bucket);
$upToken = $putPolicy->Token(null);
$putExtra = new Qiniu_PutExtra();
$putExtra->Crc32 = 1;
list($ret, $err) = Qiniu_PutFile($upToken,$filename,$filepath, $putExtra);
return $err?$err:$ret;
}
function download($file,$private=0)
{
$domain = self::$bucket.'.qiniudn.com';
$baseUrl = Qiniu_RS_MakeBaseUrl($domain,$file);
if($private)
{
$getPolicy = new Qiniu_RS_GetPolicy();
$baseUrl = $getPolicy->MakeRequest($baseUrl, null);
}
return $baseUrl;
}
//查看图像属性
function imgInfo($file,$private=0)
{
$domain = self::$bucket.'.qiniudn.com';
$baseUrl = Qiniu_RS_MakeBaseUrl($domain,$file);
//生成fopUrl
$imgInfo = new Qiniu_ImageInfo;
$imgInfoUrl = $imgInfo->MakeRequest($baseUrl);
if($private)
{
//对fopUrl 进行签名,生成privateUrl。 公有bucket 此步可以省去。
$getPolicy = new Qiniu_RS_GetPolicy();
$imgInfoUrl = $getPolicy->MakeRequest($imgInfoUrl, null);
}
return file_get_contents($imgInfoUrl);
}
function imgExif($file,$private=0)
{
$domain = self::$bucket.'.qiniudn.com';
$baseUrl = Qiniu_RS_MakeBaseUrl($domain,$file);
//生成fopUrl
$imgExif = new Qiniu_Exif;
$imgExifUrl = $imgExif->MakeRequest($baseUrl);
if($private)
{
//对fopUrl 进行签名,生成privateUrl。 公有bucket 此步可以省去。
$getPolicy = new Qiniu_RS_GetPolicy();
$imgExifUrl = $getPolicy->MakeRequest($imgExifUrl, null);
}
return file_get_contents($imgExifUrl);
}
function imgView($file,$w=120,$h=120,$private=0)
{
$domain = self::$bucket.'.qiniudn.com';
$baseUrl = Qiniu_RS_MakeBaseUrl($domain,$file);
//生成fopUrl
$imgView = new Qiniu_ImageView;
$imgView->Mode = 2;
$imgView->Width =$w;
$imgView->Height = $h;
$imgViewUrl = $imgView->MakeRequest($baseUrl);
if($private)
{
//对fopUrl 进行签名,生成privateUrl。 公有bucket 此步可以省去。
$getPolicy = new Qiniu_RS_GetPolicy();
$imgViewUrl = $getPolicy->MakeRequest($imgViewUrl, null);
}
return $imgViewUrl;
}
}
//end class qiniu
$q=new qiniu($accessKey,$secretKey);
$a=$q->bucket('supic')->info('bgpic.jpg');
var_dump($a);