亚马逊的s3存储功能
// 上传文件
vendor("aws.phar");
$credentials = new Credentials('key' , '密钥');
$s3Client = new S3Client([
'credentials' => $credentials,
'region' => 'us-west-2',//地区
'version' => 'latest',
'http' => ['verify' => false],
"use_path_style_endpoint"=>true
]);
$fileName = "/test.jpg";//存储的文件名
$bucketName = '桶名字';
try {
$status = $s3Client->putObject([
'Bucket' => $bucketName,
'Key' => $fileName,
'SourceFile' => ROOT_PATH . 'public/uploadfile/chosePt.png'
]);
echo "Uploaded $fileName to $bucketName.\n";
} catch (\Exception $exception) {
echo "Failed to upload $fileName with error: " . $exception->getMessage();
exit("Please fix error with file upload before continuing.");
}
//获取临时下载文件url
$cmd = $s3Client->getCommand('GetObject', [
'Bucket' => $bucketName,
'Key' => $fileName
]);
$request = $s3Client->createPresignedRequest($cmd, '+5 minutes');
// Get the actual presigned-url
$presignedUrl = (string)$request->getUri();
print_r($presignedUrl);