使用PHP函数include()来包含png图像

sad*_*ant 4 php png image include

好的人,尽管有最着名的做法,今天我决定这样做:

<img src='<? include("dir/dir/img.png"); ?>'>
Run Code Online (Sandbox Code Playgroud)

有6个不同的.png图像.

可悲的是,在浏览器上只能看到6个中的2个.

为什么只显示了6张图片中的2张?也许在路上有数据丢失的位?

感谢您的时间 :]

Dum*_*Guy 13

它不起作用,因为标签的src属性<img>不应该包含图像的原始数据; 相反,它应该包含指向图像数据的URI.

通过使用data:URI,您可以将图像直接嵌入到(X)HTML文档中.请注意,这在许多浏览器中都不起作用,例如旧版本的Internet Explorer.同样,还有一些限制,例如在data:URI 上限制IE8的32KB限制.

使用PHP,这是你的代码的样子:

<img src='data:image/png;base64,<?php echo base64_encode(file_get_contents("dir/dir/img.png")); ?>'>
Run Code Online (Sandbox Code Playgroud)

image/png如果您使用的图像类型发生更改,请不要忘记更改URL 的部分.例如,如果您使用GIF图像,请将其更改为image/gif.


Art*_*cto 5

这根本不应该起作用.

有关标准方法(包括HTML文档中的内嵌图像而不是指向其URL),请参阅dataURI方案.

  • 达恩,今天用完了票.我想你应该提到使用`file_get_contents`来读取文件而不是调用`include`.(`include`d数据存在安全风险!) (2认同)