如何更改php中的内容类型?

Posted

技术标签:

【中文标题】如何更改php中的内容类型?【英文标题】:How to change content type in php? 【发布时间】:2010-10-29 12:11:26 【问题描述】:

我有一张图片,但它没有显示。我检查了图像属性(右键单击并选择属性),我发现“类型”是 text/html 而不是 JPEG 图像。这是因为导致我的图像不显示的类型吗?如何更改“类型”值?我正在使用 php...

我在一个简单的 html [img] 标签中显示图像...

编辑:

是的,我试过了..如果我包括

<?php header('Content-Type:image/jpeg'); ?>

显示网址​​,很奇怪吧??

我用的是apache,图片是php代码生成的……

<img src="<?php echo bloginfo('template_url'); ?>/thumb.php?src=<?php echo get_post_meta($post->ID, "image", $single = true); ?>&amp;h=195&amp;w=540&amp;zc=1&amp;q=95" comcopy">你没有提到你正在使用哪个网络服务器。另外,您在网络服务器上显示的图像是普通文件,还是生成的图像,也使用 PHP?是只有这一个图像不起作用,还是此服务器上托管的所有图像都会发生这种情况?
                
              
                
            
        
    
    
        
        
            
                
                直接用浏览器调用图片URL,看看有没有报错。如果您的浏览器报告图像损坏,则图像生成代码中存在错误,但 header() 很好。我很确定您的内容类型现在设置正确。错误可能在其他地方。
                
              
                
            
        
    
    
        
        
            
                
                已调用,未找到 C:/wamp/www/wp-content/uploads/2009/05/1.jpg。但是,图像文件在该文件夹中。很奇怪吧??
                
              
                
            
        
    
    
        
        
            
                
                我在本地测试它,使用 wamp,它的 wordpress 东西......
                
              
                
            
        
    
    
        
        
            
                
                这能回答你的问题吗? change mime type of output in php
                
              
                
            
        
    

            

 
             
            【参考方案1】: 
                

    
    
header('Content-Type: image/jpeg');

确保在进行任何输出之前调用 header() 函数,否则您将收到“标头已发送”错误。

【讨论】:

【参考方案2】:

听起来图像是由某种服务器端脚本生成的。如果它是由您有权访问的 PHP 脚本生成的,只需包括对 header() 的调用,如下所示:

header('Content-Type: image/jpeg');

确保在输出任何东西之前调用header()——即使是意外输出的空行或杂散空间也会导致header()失败(通常最好调用@ 987654325@在脚本的开头)。

我认为,如果您无法访问生成图像的脚本,那么您就不走运了。

【讨论】:

以上是关于如何更改php中的内容类型?的主要内容,如果未能解决你的问题,请参考以下文章

仅在内容类型 === JSON 时更改 Java 过滤器中的内容类型或字符编码

如何更改 httppostedfilebase 的内容类型?

在 drupal 7 中更改 CDN 中的视频内容类型(mime 类型)

如何使用 AWS CLI 更改对象的内容类型?

php新建H5牛牛棋牌搭建各种类型表

如何使用 PHP < 5.3 获取文件内容类型?