这个问题可能看起来很傻,但如果我得到一个好的答案,我将不胜感激。
我知道什么是http标头,我们可以使用php中的header
函数来更改它。
假设我有一个php文件an_image.php
,其代码如下:
<?php header('Content-type:image/jpeg'); ?>
<img src="image/flower.jpg">
为什么我的图标会被破坏?通过更改header
内容类型,我不将输出更改为图像?
我认为img
标记仍然是html
输出,因此我正在尝试将html
内容设置为图像内容,因此我会看到损坏的图标。
那么内容类型的用途是什么:image / jpeg以及在哪里可以使用?
例如,flower.jpg
图片位于我的图片文件夹中。如果我创建flower.php
并使用文本编辑器打开flower.jpg
并复制其代码并将其粘贴到flower.php
并设置heade
r content-type:image/jpeg
并尝试在浏览器上打开它说法语错误。
寻找一个好的解释。
答案 0 :(得分:2)
您输出内容的正确内容类型为text/html
。仅当您输出实际图像文件的内容时,才使用image/jpeg
内容类型。
<?php
header('Content-Type: image/jpeg');
readfile('image/flower.jpg');
常见用途包括让PHP脚本在验证用户的权限后允许访问受保护的文件,跟踪像素(保存一些数据然后提供1x1图像),并提供动态生成的图像。