如何在单个HTML / PHP文件中嵌入图像?

我正在创建一个轻量级的单文件数据库管理工具,我希望将一些小图标与其捆绑在一起。将图像嵌入HTML / PHP文件的最佳方法是什么?

我知道一种使用PHP的方法,在该方法中,我将使用GET参数调用同一文件,该参数将输出具有正确标头的硬编码二进制数据,但这似乎有点复杂。

我可以使用某些东西直接在CSS background-image声明中传递图像吗?这将允许我利用CSS Sprite技术。

浏览器支持在这里不是问题,因此也欢迎使用更多奇特的方法。

有人知道如何使用PHP正确生成数据URL的链接/示例吗?我想数字echo

'data:image/png;base64,'.base64_encode(file_get_contents('image.png'))就足够了,但我可能是错的。

回答:

将图像直接嵌入HTML页面的解决方案是使用数据URI方案

例如,您可以使用如下所示的HTML的某些部分:

<img src="data:image/png;base64,

iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP

C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA

AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J

REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq

ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0

vr4MkhoXe0rZigAAAABJRU5ErkJggg==" alt="Red dot" />

我链接到Wikipedia页面上还有其他解决方案:

  • 包括图像作为CSS规则
  • 使用一些Javascript。

但是请注意,这些解决方案不能在所有浏览器上都可以使用-由您决定,在您的特定情况下,是否可以接受。

要回答您有关 “如何使用PHP正确生成数据URL”的问题 ,请在Wikipedia页面中介绍一下Data

URI方案,该部分给出了这部分代码

(引号)

function data_uri($file, $mime) 

{

$contents = file_get_contents($file);

$base64 = base64_encode($contents);

return ('data:' . $mime . ';base64,' . $base64);

}

?>

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

以上是 如何在单个HTML / PHP文件中嵌入图像? 的全部内容, 来源链接: utcz.com/qa/406827.html

回到顶部