通过Zend从SQL Server提供文件

时间:2009-09-03 01:32:11

标签: php sql-server zend-framework file

我将文件存储到SQL服务器的图像字段中,在转换为使用后将字符串存储为十六进制:

unpack("H*hex", $datastring);

如果我从数据库中读取并写入文件,然后在本地打开文件我就可以打开它了。但是,如果我尝试将文件作为附件发送到浏览器,则该文件会损坏且无法读取。目前,相关文件是PDF和MSWord文档。

我将内容类型设置为文件的相应MIME类型,并将内容配置设置为附件。我已经尝试了各种流式传输文件的方法,包括直接从数据库转储字符串,然后首先写入文件然后读取文件(逐行或使用readfile())。

我正在使用Zend框架的稍微定制版本,但我不确定这是否会导致任何问题。如何将文件发送到浏览器?

1 个答案:

答案 0 :(得分:0)

你如何为他们服务?理论上如果你使用的是MVC,你需要在控制器的末尾禁用视图,以避免在文件底部注入额外的内容。