【问题标题】:Save base64 encoded image as JPG instead of PNG将 base64 编码图像保存为 JPG 而不是 PNG
【发布时间】:2017-08-07 20:07:22
【问题描述】:

我正在使用这个简单的 PHP 脚本保存一个 base64 编码的图像...

define('UPLOAD_DIR', 'upload/');
$img = $_POST['imgBase64'];
$img = str_replace('data:image/png;base64,', '', $img);
$img = str_replace(' ', '+', $img);
$data = base64_decode($img);
$file = UPLOAD_DIR . uniqid() . '.png';

file_put_contents($file, $data);

这很好用,但图像始终是 PNG。我曾尝试将扩展名更改为 JPG,希望它可以工作,但它没有。

是否需要先将其保存为 PNG,然后再转换为 JPG?

【问题讨论】:

  • 让我引用莎士比亚的话:“任何其他名字的玫瑰都会闻起来很香”

标签: php base64 file-put-contents


【解决方案1】:

是的,您必须先将图像转换为 JPG。

【讨论】:

    最近更新 更多