使用字节数组在 S3 中上传图像


upload image in s3 using byte array

嗨,我想在 s3 中上传图像,我有字节数组。如何动态将字节数组转换为临时 url?

$byte_arr = 'iVBORw0KGgoAAAANSUhEUgAAACIAAAAhCAYAAAHL1En6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAK
T2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AU
kSYqIQkQSogh';
    //$file_content = 'data:image/jpeg;base64, $byte_arr';
    //echo "<img src='data:image/jpeg;base64, $byte_arr' />";die;
    $s3->putBucket("bucketname", S3::ACL_PUBLIC_READ);
    $fileName = 'user_1.jpg';
    //move the file
    if ($s3->putObjectFile($file, "bucketname", $fileName, S3::ACL_PUBLIC_READ)) {
        echo "We successfully uploaded your file.";
    }else{
        echo "Something went wrong while uploading your file... sorry.";
    }

所以我的问题是如何从字节数组获取$file。我需要tmp_url。

您可以使用 imagecreatefromstring() 函数:

 $data = base64_decode($byte_arr);
 $formImage = imagecreatefromstring($data);