Tôi hiện đang làm như sau để giải mã hình ảnh base64 trong PHP:Làm thế nào tôi có thể dải dữ liệu: phần hình ảnh từ một chuỗi base64 của bất kỳ loại hình ảnh trong PHP
$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);
Như bạn thấy ở trên, chúng tôi được chấp nhận bốn loại hình ảnh tiêu chuẩn nhất (jpeg, png, gif, bmp);
Tuy nhiên, một số hình ảnh này rất lớn và quét qua mỗi lần 4-5 lần với str_replace có vẻ như một chất thải khủng khiếp và cực kỳ kém hiệu quả.
Có cách nào tôi có thể phân tách dữ liệu một cách đáng tin cậy: phần hình ảnh của chuỗi hình ảnh base64 trong một lần truyền không? Có lẽ bằng cách phát hiện dấu phẩy đầu tiên trong chuỗi?
Lời xin lỗi của tôi nếu đây là một vấn đề đơn giản, PHP không phải là sở trường của tôi. Cảm ơn trước.
Bạn lấy bánh! – TFennis
Hoàn hảo! Mặc dù tất cả các câu trả lời đều tốt và hoạt động hoàn hảo. Dường như phương pháp của bạn là nhanh nhất, do đó tôi sẽ trao cho bạn câu trả lời ngay sau khi tôi có thể. Cảm ơn nhiều. :) – gordyr
@gordyr bạn được chào đón –