2012-09-18 23 views
2

大家好,我有一个PHP函数file_get_contents有关的问题。PHP函数file_get_contents检索编码的信息 - 标题:“'Content-Type:image/png'”

我用了很多次,没有问题,但是当我试图从某个特定网站获得一些信息时,我得到的信息是echo,结果是非常多的编码(例如:���IHDR�)。

我看了一下网站的标题和而不是说

Content-Type: text/html; 

跟它

Content-Type: image/png 

如何解码,如此我能得到的源代码(HTML)现场?当我在浏览器中浏览网页时,它看起来像一个普通的网站:文本,图像没有什么特别之处。

当我查看源代码中没有任何不寻常的东西。但是当我做file_get_contents时,我没有像我以前在其他网站上那样获得源代码。

任何想法?

注意:我以前有同样的问题,它在GZIP编码,我能找到一个函数来解码它,但与Content-Type: image/png我不知道如何继续。

回答

1

为什么不创建一个基本的测试脚本输出返回的图像,尽管我怀疑它的一个形象的说法:

停止再杀我的网站!内容十分重要

header('Content-Type: image/png'); 
echo file_get_contents('http://example.com'); 
+0

感谢您的回答;这也是我的错误,我无意中将错误的链接粘贴到了file_get_contents函数中。但这绝对是一种我不知道的经验,我必须首先使用header函数,然后才能用file_get_contents检索它 – user1679010

+0

在上面的示例中,不使用我的头文件只会告诉浏览器,接下来是图像/ PNG。如果你期待的HTML没有必要添加一个头。很高兴你把事情解决了。 –

0

Content-Type头告诉你所请求的文件有哪些内容类型,你的情况这是一个PNG图像(image/png)。

您可以在网上找到许多内容类型(用所谓的MIME类型规范书写)的描述,这是一个不错的列表:fileformat.info MIME types

正如你可以想象的那样,不可能以文本形式显示图像(至少在转换为ascii艺术之前不能),所以这次你不会有太多的运气。

检查URI是否真的是你想获得的URI。