我要从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 (Aws\S3\Exception\S3Exception $e) {
echo $e->getMessage();
}
我应该在$file_path =
变量中添加什么代码以从用户的计算机获取图像,然后将其上传到S3?
答案 0 :(得分:0)
使用file_get_contents: file_get_contents($ _ FILES ['uploadedfileFormField'] ['tmp_name']);
,然后您不需要:打开。 尝试捕获和错误处理必须照顾。
$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 (Aws\S3\Exception\S3Exception $e) {
echo $e->getMessage();
}