”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 如何在单个脚本中直接显示二进制图像而不将其保存到磁盘?

如何在单个脚本中直接显示二进制图像而不将其保存到磁盘?

发布于2024-11-22
浏览:777

How can I display binary images directly in a single script without saving them to disk?

在单个脚本中显示二进制图像

问题:

能否直接从二进制数据重新创建并显示图像相同的脚本?这涉及到在 HTML 图像标签中显示数据之前使用 GD 或类似工具处理数据。目标是避免将处理后的图像保存到磁盘或使用外部脚本。

解决方案:

这可以通过使用图像源属性中的数据 URI 来实现。数据 URI 格式为:

data:[][;charset=""][;base64],

此 PHP 函数创建一个文件中的数据 URI:

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

以下代码使用数据 URI 显示图像:

echo 'An elephant';

用法:

至显示处理后的二进制图像数据,您可以使用 data_uri 函数并将生成的 URI 作为图像源输出,如下所示:

$imagedata1 = file_get_contents('assets/test.png');
$imagedata1 = process_using_gd_or_something($imagedata1);

echo '如何在单个脚本中直接显示二进制图像而不将其保存到磁盘?';

此代码将直接显示处理后的图像不使用外部脚本或磁盘存储的二进制数据。

最新教程 更多>

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3