首页  >  文章  >  后端开发  >  可以使用数据 URI 直接从二进制数据显示图像吗?

可以使用数据 URI 直接从二进制数据显示图像吗?

Barbara Streisand
Barbara Streisand原创
2024-11-07 05:56:02361浏览

Can Images Be Displayed Directly from Binary Data Using Data URIs?

从二进制数据创建和显示图像

您可以直接在单个脚本中从二进制数据创建和显示图像吗?这个问题源于希望在不依赖外部脚本或将图像写入磁盘的情况下处理和显示图像。

答案在于使用数据 URI。数据 URI 遵循特定的格式:

data:[<MIME-type>][;charset="<encoding>"][;base64],<data>

MIME 类型指定数据的格式,例如 image/png 或 image/jpeg。字符集和base64 是可选的。实际数据以base64编码表示。

要从二进制数据生成数据URI,您可以使用如下函数:

function data_uri($file, $mime) 
{  
  $contents = file_get_contents($file);
  $base64   = base64_encode($contents); 
  return ('data:' . $mime . ';base64,' . $base64);
}

通过此函数,您可以使用作为图像 src 属性的数据 URI:

<img src="<?php echo data_uri('elephant.png','image/png'); ?>" alt="An elephant" />

以上是可以使用数据 URI 直接从二进制数据显示图像吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

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