我目前正在执行以下操作来解码 PHP 中的 base64 图像:
$img = str_replace('data:image/jpeg;base64,', '', $s['image']);
$img = str_replace('data:image/png;base64,', '', $s['image']);
$img = str_replace('data:image/gif;base64,', '', $s['image']);
$img = str_replace('data:image/bmp;base64,', '', $s['image']);
$img = str_replace(' ', '+', $img);
$data = base64_decode($img);
正如您在上面看到的,我们接受四种最标准的图像类型(jpeg、png、gif、bmp);
但是,其中一些图像非常大,使用 str_replace 扫描每个图像 4-5 次似乎是一种可怕的浪费,而且效率极低。
有没有一种方法可以可靠地剥离数据:base64 图像字符串的图像部分?也许通过检测字符串中的第一个逗号?
如果这是一个简单的问题,我很抱歉,PHP 不是我的强项。提前致谢。