我正在尝试从数据库(blob)字段中检索图像并在网页上呈现它。在Zend之外,在测试应用程序中,这可以正常工作。但是,在Zend框架内,渲染失败。相反,URL将显示在其他空白页面上。如果我包含Zend_Debug语句,它会显示从db(MySQL)检索的完整二进制流。以下是我正在使用的一些代码:
<?php
$result = $q->fetchArray(); //fetch result from the database through Doctrine
header("Content-Type: {$result[$seq]["mimeType"]}"); //get MIME type from db, set header
$pict = $result[$seq]["picture"]; //get image from db blob field
// echo Zend_Debug::dump($pict, '$pict');
?>
如果有人能对这个问题有所了解,我将非常感激。 谢谢,Jan
答案 0 :(得分:1)
这不是“趋势方式”。您应该使用响应对象方法来设置标头,然后使用sendHeaders()和sendBody()来触发响应。不需要禁用布局。
答案 1 :(得分:0)
有一个内置帮助器就是这样做的。不要使用php header()函数,使用
$ this-&gt; headMeta() - &gt; appendHttpEquiv('Content-Type',$ this-&gt; result [$ seq] [“mimeType”]);
有点像那样。您可以在视图中或控制器中或您正在使用的任何内容中执行此操作。 http://framework.zend.com/manual/en/zend.view.helpers.html#zend.view.helpers.initial.headmeta