I';我正在编程一个php系统,根据给该方法的参数加载一个图像。图像正在加载为断开的图像
我正在编写一个php系统,根据给该方法的参数加载一个图像。直到最近,当我修改它时,这段代码一直工作得很好。这是一个经典的“它曾经起作用,但现在,突然之间,它不是”案例。我不知道我做了什么把事情搞砸了,也就是说如果我做了什么把事情搞砸了I';我正在编程一个php系统,根据给该方法的参数加载一个图像。图像正在加载为断开的图像,php,loading,brokenimage,Php,Loading,Brokenimage,我正在编写一个php系统,根据给该方法的参数加载一个图像。直到最近,当我修改它时,这段代码一直工作得很好。这是一个经典的“它曾经起作用,但现在,突然之间,它不是”案例。我不知道我做了什么把事情搞砸了,也就是说如果我做了什么把事情搞砸了 public function image($parameters) { //default values for parameters $param1 = ' '; $param2 = ' '; if(!empty($para
public function image($parameters) {
//default values for parameters
$param1 = ' ';
$param2 = ' ';
if(!empty($parameters)) {
foreach($parameters as $key => $value){
if(!empty($parameters[$key+1])) {
$value = $value . '/';
}
switch($key) {
case 2:
$param1 = $value;
break;
case 3:
$param2 = $value;
break;
}
}
}
$dir = '/resources/images/';
$file = VIEWDIR . $dir . $param1 . $param2;
echo $file;
if(file_exists($file)) {
$file = file_get_contents($file);
header("Content-type: image/png");
echo $file;
}
}
上面的代码生成了以下HTML在设置标头之前,您不能回显$file,因为这样会中断输出 发件人:
请记住,在发送任何实际输出之前,必须先调用header(),可以是通过普通HTML标记、文件中的空行,也可以是从PHP中调用。使用include或require函数或其他文件访问函数读取代码,并且在header()之前输出空格或空行,这是非常常见的错误调用。使用单个PHP/HTML文件时也存在相同的问题。“为什么要在exists行之前回显文件?@KaiQing很可能是一个调试语句,以确保路径“正确”,并且请定义“不工作”,这不会告诉我们任何信息。是的,这正是问题所在。只是指出他是以这种方式发布的。他会得到很多关于这件事的评论@用户-您是否已查看源以显示正在显示的内容?也许这篇文章可以帮助澄清这一点。