Сейчас я создаю изображение QR-кода (PNG) и сохраняю его копию в папке в корне моего сервера. Теперь я хотел бы сохранить это изображение не на своем сервере, а в своем ведре Amazon.
Я знаю, как я могу сохранить файл на Amazon, но я не могу понять, как заставить это работать вместе. Это мой исходный код для его сохранения в корневой папке на моем сервере:
$fileName = $quiz_url . '.png';
$pngAbsoluteFilePath = APPLICATION_PATH . '/../public/qrcodecaches/' . $fileName;
$urlRelativeFilePath = '/qrcodecaches/' . $fileName;
// generating
if (!file_exists($pngAbsoluteFilePath)) {
QRcode::png('http://mysitelink.com/s/'.$quiz_url, $pngAbsoluteFilePath, 'L', 4, 2);
}
И вот как я сохраняю файл на Amazon:
$bucket = 'mybucket';
$map = 'qrcodecaches';
$client = S3Client::factory(array(
'key' => 'mykey',
'secret' => 'mysecret',
));
$fileName = $quiz_url . '.png';
$keyname = $map . '/' . $fileName;
try {
$client->putObject(array(
'Bucket' => $bucket,
'Key' => $keyname,
'Body' => fopen('/path/to/file', 'r'),
'ACL' => 'public-read',
));
} catch (S3Exception $e) {
echo "There was an error uploading the file.\n";
}
Но что мне нужно сохранить в теге «Тело»? Может ли кто-нибудь помочь мне с этим?