标题之前和之后的其他非图像相关代码不再起作用

时间:2012-07-22 14:04:33

标签: php header gd jpeg

我正在尝试使用标题('Content-type:image / jpeg')来编辑和显示jpeg照片,如下所示。

header('Content-type: image/jpeg') 
$filename = 'aaa.jpg';
 $im = imagecreatefromjpeg($filename); 
imagefilter($im, IMG_FILTER_CONTRAST,50);
imagejpeg($im);
imagedestroy($im); 

在同一个文件中,我还有其他简单的代码,比如$ abc = $ _POST ['abc']。 我把标题,代码之前的代码和图像破坏后的代码($ im)不再起作用。当我在标题之前放置任何代码如$ _post ['abc']时,标题和代码都不起作用。在我包含标题和代码来操作和输出图像之前,所有代码都很好。这是我第一次使用标题('Content-type:image / jpeg'),经过这么长时间的努力后我找不到答案。请帮忙。谢谢。

1 个答案:

答案 0 :(得分:0)

如果要输出html页面,请不要发送图像标题。但相反,首先将转换后的图像输出到服务器上的文件,然后在html页面中添加<img><a> nchor标记:

<html><body>
<?php
$output_dir = 'images';
if (!file_exists($output_dir)) {
    mkdir($output_dir, 0777);
}
$filename = 'aaa.jpg';
$filename2 = 'aaa2.jpg';
if (!file_exists($filename)) {
    echo 'Input image not exists!'; exit;
}
$im = imagecreatefromjpeg($filename);
imagefilter($im, IMG_FILTER_CONTRAST, 50);
imagejpeg($im, $output_dir.'/'.$filename2);
imagedestroy($im);

echo 'Original image:<br/><img src="'.$filename.'" /><br/>';
echo 'Transformed image:<br/><img src="'.$output_dir.'/'.$filename2.'" />';
?>
</body></html>

如果图像标题发送,您希望将其作为独立图像输出。有关更多示例,请查看php.net