使用php头文件和包含文件加载图像?

使用php头文件和包含文件加载图像?,php,image,gd,Php,Image,Gd,我一直在尝试创建一个简单的php脚本,将另一个php生成的动态url转换为一个图像,但我得到的只是一个空白页面,有人知道为什么这不起作用吗 <?php include('icecast.php'); $cover = ($stream['artist']['top_albums']['0']['image']['3']); header('Content-Type: image/jpeg'); readfile('$cover'); ?> 我尝试了很多不同的方法,但仍然得到了相

我一直在尝试创建一个简单的php脚本,将另一个php生成的动态url转换为一个图像,但我得到的只是一个空白页面,有人知道为什么这不起作用吗

<?php
include('icecast.php');
$cover = ($stream['artist']['top_albums']['0']['image']['3']);
header('Content-Type: image/jpeg');
readfile('$cover');
?>


我尝试了很多不同的方法,但仍然得到了相同的结果。

好吧,至少您尝试使用的不是变量
$cover
,而是文本字符串
'$cover'


很明显,字符串必须用引号分隔,但访问变量时不应使用引号

至少您尝试使用的不是变量
$cover
,而是文本字符串
'$cover'


很明显,字符串必须用引号分隔,但访问变量时不应使用引号

您使用的是
'$cover'
,而它应该是
$cover

readfile($cover);
还要确保$cover具有完整的文件名和扩展名,并添加

header('Content-Length: ' . filesize($cover));
也要这样做:

header('Content-Type:image/jpeg');
header('Content-Length: ' . filesize($cover));
readfile($cover);
使用两个标题,alo验证您的文件是否具有jpeg类型。。。。
并确保在标题前没有输出,绝对没有。没有回声。由于内容类型是图像,所以除了文件之外,不应该有任何输出

您使用的是
'$cover'
,而它应该是
$cover

readfile($cover);
还要确保$cover具有完整的文件名和扩展名,并添加

header('Content-Length: ' . filesize($cover));
也要这样做:

header('Content-Type:image/jpeg');
header('Content-Length: ' . filesize($cover));
readfile($cover);
使用两个标题,alo验证您的文件是否具有jpeg类型。。。。 并确保在标题前没有输出,绝对没有。没有回声。由于内容类型是图像,所以除了文件之外,不应该有任何输出

这对我很有用:

重要的一点是,您必须发送内容类型标题。另外,>您必须小心,不要在标记之前或之后的>文件中包含任何额外的空白(如换行符)

正如评论中所建议的,您可以通过省略?>标记来避免脚本末尾出现额外的空白>空格的危险:

这对我很有效:

重要的一点是,您必须发送内容类型标题。另外,>您必须小心,不要在标记之前或之后的>文件中包含任何额外的空白(如换行符)

正如评论中所建议的,您可以通过省略?>标记来避免脚本末尾出现额外的空白>空格的危险:


请粘贴完整的代码。在下面的回答中,您说的是“输出仅显示大量符号和字母”-您如何将图像放在页面上?-这是HTTP调用还是ajax?这就是为什么我们需要更多的代码。模棱两可无助于解决问题。我已经添加了一个指向项目页面的链接。我不是模棱两可!请粘贴完整的代码。在下面的答案中,您是说“输出仅显示许多符号和字母”-您如何将图像放在页面上?-这是HTTP调用还是ajax?这就是为什么我们需要更多的代码。模棱两可无助于解决问题。我已经添加了一个指向项目页面的链接。我不是模棱两可!你提供的解决方案很有效现在唯一的问题是图像没有按应有的方式显示,图像显示为符号和字母。我不想透露文件代码,因为这不是我创建的,但我可以写一个链接,这样你就可以看到icecast.php[link]上发生了什么删除所有标题。。。使用echo$cover…并查看发生了什么。如果您的路径设置正确与否,则输出是图像的url您提供的解决方案类型有效,现在唯一的问题是图像显示方式不正确,图像显示为符号和字母。我不想透露文件代码,因为这不是我创建的,但我可以写一个指向它的链接,这样你就可以看到icecast.php[link]上发生了什么删除所有标题。。。使用echo$cover…并查看发生了什么。如果yoy是否正确获取路径,则输出是图像的url