php - 我如何在 Joomla 中设置内容类型?

标签 php http joomla content-type

我正在开发一个 Joomla 组件,其中一个 View 需要将其自身呈现为 PDF。在 View 中,我尝试使用以下行设置内容类型,但是当我看到响应时,它仍然是 text/html。

header('Content-type: application/pdf');

如果我在常规 php 页面中执行此操作,一切都会按预期进行。看来我需要告诉 Joomla 使用 application/pdf 而不是 text/html。我该怎么做?

注意:设置其他 header (例如 Content-Disposition)会按预期工作。

最佳答案

从 1.5 版开始,Joomla 就有了 JDocument 对象。使用 JDocument::setMimeEncoding()设置内容类型。

$doc =& JFactory::getDocument();
$doc->setMimeEncoding('application/pdf');

在您的特殊情况下,请查看 JDocumentPDF可能是值得的。

关于php - 我如何在 Joomla 中设置内容类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/133394/

相关文章:

php - 在PHP中使用error_log时如何保存行号?

PHP 图像代理使用直接 URL 代替?

javascript - AngularJS HTTP请求不会出现在错误中

angular - 如何在使用 Angular HttpClient 时获取错误响应的 HTTP 状态?

c# - 如何将 HttpWebRequest 与 GET 方法一起使用

mysql - Mysql/Joomla 特定列更改时是否有时间戳?

php - 改变使用 PHP/MySQL 生成的图形

php - 键入时实时搜索结果...我这样做是否正确? jQuery + PHP

javascript - ClearBox 3 jQuery.noConflict();和/或 javascript 冲突?

joomla - 如何在 joomla 2.5 和 3 中禁用注册电子邮件