我用七牛官方提供的上传代码做了一个上传程序,准备上传图片。图片名称是一样的,但是图片内容不同,在上传的时候,提示我图片已经存在。这是怎么回事,不是可以覆盖吗。?
以下是代码:
$key1[0] ='full.png';
$key1[1] ='medium.png';
$bucket = "img-i";
$file[0]='full.png'; //准备上传的图片
$file[1]='medium.png'; //准备上传的图片
Qiniu_SetKeys($accessKey1, $secretKey1);
$putPolicy = new Qiniu_RS_PutPolicy($bucket);
$upToken = $putPolicy->Token(null);
$putExtra = new Qiniu_PutExtra();
$putExtra->Crc32 = 1;
for($i_qiniu=0;$i_qiniu<2;$i_qiniu++){
list($ret, $err) = Qiniu_PutFile($upToken, $key1[$i_qiniu], $file[$i_qiniu], $putExtra);
echo " $i_qiniu ====> Qiniu_PutFile result: <br />\n";
if ($err !== null) {
var_dump($err);
} else {
var_dump($ret);
}
}
以下是反馈的信息:
0 ====> Qiniu_PutFile result:
object(Qiniu_Error)#26 (4) {
["Err"]=>
string(11) "file exists"
["Reqid"]=>
NULL
["Details"]=>
NULL
["Code"]=>
int(614)
}
1 ====> Qiniu_PutFile result:
object(Qiniu_Error)#27 (4) {
["Err"]=>
string(11) "file exists"
["Reqid"]=>
NULL
["Details"]=>
NULL
["Code"]=>
int(614)
}
没错确实是。分享一下我的代码吧。
//-----------------------------------------上传BEGIN
// $key1为上传文件所用的名称,$file1为文件在服务器上的位置。
$key1[0] = 'full.jpg' ;
$key1[1] = 'large.jpg' ;
$key1[2] = 'medium2.jpg' ;
$key1[3] = 'medium.jpg' ;
$key1[4] = 'small.jpg' ;