Как сохранить строку base64 как изображение на стороне сервера

1

Я хочу сохранить строку base64 как изображение (.png или.jpg) на моем сервере.

Строка, которую я получаю, выглядит так: "data: image/jpeg; base64,/9j/4AAQSkZJRgABAQAAAQA [...]"

Я попробовал это:

$data = $_POST['form_new_data'];
        list($type, $data) = explode(';', $data);
        list(, $data)      = explode(',', $data);
        $data = base64_decode($data);
        file_put_contents("/userImgs/pic.jpg",$data);

но он не работает (может быть, потому, что строка base64 является jpeg?).. Пожалуйста, помогите..

Теги:
base64
decode

1 ответ

6
Лучший ответ

попробуй это

$data = $_POST['form_new_data'];
file_put_contents('img.jpg', base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $data)));
  • 0
    вы забыли удалить префикс ;-P
  • 0
    понял после публикации. Это нормально сейчас РТ?
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню