我从html表单中获取文件,然后将其上传到AWS S3存储桶中。
以下代码在我的计算机上查找文件的路径,然后将其上传到S3:
$bucketname = 'we-sign-files';
$file_path = '/Users/dripz/Desktop/wesign/uploads/5f31fc30410c17.68431957.jpg';
$key = basename($file_path);
try {
$s3->putObject([
'Bucket' => $bucketname,
'Key' => $key,
'Body' => fopen($file_path, 'r')
]);
} catch (AwsS3ExceptionS3Exception $e) {
echo $e->getMessage();
}
我应该在$file_path =
变量中放入什么代码来从用户的计算机获取图像,然后上传到S3?
使用file_get_contents:file_get_contents($_FILES['ploadedfileFormField']['tmp_name'](;
然后您就不需要:fopen了。尝试处理您必须注意的捕获和错误。
$bucketname = 'we-sign-files';
$fileName = $_FILES['uploadedfileFormField']['tmp_name'];
$file_path = file_get_contents($fileName);
$key = basename($fileName);
try {
$s3->putObject([
'Bucket' => $bucketname,
'Key' => $key,
'Body' => $file_path
]);
} catch (AwsS3ExceptionS3Exception $e) {
echo $e->getMessage();
}