Sie nicht gehören die data:URI scheme
(data:image/png;base64,
) innerhalb $data
.
Sie können die data:URI scheme
mithilfe der Funktion explode
entfernen, die ein Array mit zwei Elementen und vor der Verwendung base64_decode
zurückgibt.
$data[0]
=> die Daten: URI-Schema.
$data[1]
=> Ihre Daten.
es wie folgt verwenden, ,
als Trennzeichen verwendet:
$data = explode(',', $data)[1];
Und dann den nächsten Code Versuchen:
$fileName = Input::get('file_name');
$fileStream = fopen(public_path() . '/user_attachments/' . $fileName , "wb");
fwrite($fileStream, base64_decode($data));
fclose($fileStream);
oder
//////////// The final filename.
$fileName= Input::get('file_name');
//////////// Upload path
$uploadPath = public_path() . "/user_attachments/" . $fileName;
//////////// Decode your image/file
$data = base64_decode($data);
//////////// Upload the decoded file/image
if(file_put_contents($uploadPath , $data)){
echo "Success!";
}else{
echo "Unable to save the file.";
}
Im Ordner user_attachments erstellt es nur leere Bilder oder Dokumente. – SARAN
Meine $ Daten sind Base64-Datei. $ data = Daten: image/png; base64, iVBORw0KGgoAAAA ............ kSuQmCC – SARAN
Das Problem ist, dass 'Daten: image/png; base64'. Dies verwandelt die '$ Daten' in ungültige Bilddaten. Versuchen Sie es mit dem 'data: URI-Schema' (' data: image/png; base64, ') – tomloprod