首页 >web前端 >js教程 >如何使用 PHP 从 Base64 数据 URI 保存 PNG 文件?

如何使用 PHP 从 Base64 数据 URI 保存 PNG 文件?

Patricia Arquette
Patricia Arquette原创
2024-12-06 12:12:18999浏览

How to Save PNG Files from Base64 Data URIs Using PHP?

使用 PHP 从 Base64 数据 URI 服务器端保存 PNG 文件

使用 Nihilogic 的“Canvas2Image”等工具将画布绘图转换为 PNG 图像时, “经常需要使用 PHP 将这些图像存储在服务器上。这可以通过解码该工具生成的 Base64 字符串并创建实际的 PNG 文件来实现。

为此,请通过用分号 (';') 和逗号 ( ',')。使用 base64_decode 函数对数据进行解码,并将其传递给 file_put_contents 函数以将文件保存到所需位置。

例如:

$data = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...';

list($type, $data) = explode(';', $data);
list(, $data) = explode(',', $data);
$data = base64_decode($data);

file_put_contents('/tmp/image.png', $data);

要简化过程,请使用一- liner:

$data = base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $data));

对于图像类型的错误处理和验证,您可以使用以下:

if (preg_match('/^data:image\/(\w+);base64,/', $data, $type)) {
    // ... validation and processing
}

通过执行以下步骤,您可以使用服务器端 PHP 代码有效地将来自 Base64 数据 URI 的 PNG 图像保存在服务器上。

以上是如何使用 PHP 从 Base64 数据 URI 保存 PNG 文件?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn