使用七牛云存储提供的PHP SDK,可以非常方便的将本地文件上传到七牛,但默认情况下,上传的文件不会覆盖旧文件,也就是说,之前上传了一个名为photo.jpg的文件,再上传同名文件photo.jpg时就会失败。
先来看看七牛API上传文件的代码:
<?php require_once( 'php-sdk-master/autoload.php' ); use Qiniu\Auth; use Qiniu\Storage\UploadManager; $path = 'img/photo.jpg'; $key = 'photo.jpg'; $auth = new Auth( 'AccessKey', 'SecretKey' ); $token = $auth->uploadToken( 'Bucket Name', $key ); $upManager = new UploadManager(); $upManager->putFile( $token, $key, $path ); ?>
要覆盖旧文件,关键在于uploadToken的第二个参数,必须指明在七牛上保存的文件名。
在本例中,$key为在七牛云存储保存的文件名,而$path为是本地文件的完整路径。