Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 下载PDF文件,而不是使用CodeIgniter显示_Php_Codeigniter_Pdf_Download - Fatal编程技术网

Php 下载PDF文件,而不是使用CodeIgniter显示

Php 下载PDF文件,而不是使用CodeIgniter显示,php,codeigniter,pdf,download,Php,Codeigniter,Pdf,Download,我正在使用CodeIgniter和生成PDF文件。 但现在的问题是pdf文件会显示在浏览器中。 我想把它下载下来。 这是我的密码: $this->load->library('cezpdf'); $data['users'] = $this->user->get_all_ayant_droits(); foreach($data['users'] as $user) { $db_data[] = array('n

我正在使用CodeIgniter和生成PDF文件。 但现在的问题是pdf文件会显示在浏览器中。 我想把它下载下来。 这是我的密码:

$this->load->library('cezpdf');

        $data['users'] = $this->user->get_all_ayant_droits();

        foreach($data['users'] as $user) {
            $db_data[] = array('name' => $user->nom, 'department' => $user->Department, 'status' => $user->Status);
        }

        $col_names = array(
            'name' => 'Noms et Prenoms',
            'department' => 'Département',
            'status' => 'Status'
        );

        $this->cezpdf->ezTable($db_data, $col_names, 'Ayant droit Base Loisirs de Kribi', array('width'=>550));
        $this->cezpdf->ezStream();  

此控制器发送文件下载时缺少什么?

您可以使用下载帮助程序

您还可以通过设置适当的标题值来使用ouput变量

$this->output->set_header('Content-Disposition: attachment; filename="PDF_filename.pdf"');
$this->output->set_content_type('application/pdf')
             ->set_output($this->cezpdf->ezStream());
这里,通过将内容类型设置为应用/pdf,使浏览器识别内容为pdf,并内容处置:附件强制下载文件


希望这有帮助。抱歉,英语不好。

您可以将参数传递给函数ezStream

$this->cezpdf->ezStream(array $options);
$options'compress'=>0/1
以启用压缩。对于压缩级别,请在第一点使用
$this->options['compression']=
。默认值:1
'download'=>0/1
以内联显示(在浏览器中)或作为下载显示。默认值:0

查看下载帮助程序。我已经在@Craig上看过了,但从我读到的来看,我首先需要一个文件。在我的例子中,我没有文件路径或名称…你不需要文件,你可以创建一个。我不知道它是否有效,但试试这个<代码>强制下载('download.pdf',$this->cezpdf->ezStream())这是以“download.pdf”的形式下载您的数据。它不工作,其行为与我刚刚显示的数据相同。没有下载。试试这个$这->cezpdf->ezStream(数组('download'=>1));我从文档中了解到这一点第一个建议的行为类似于没有donwload,只是在浏览器上显示pdf,第二个建议生成错误:消息:函数集\u magic\u quotes\u runtime()已弃用,消息:通过引用指定new的返回值已禁用deprecated@pollux1er谢谢你的反馈。我将进一步调查,并让您知道我是否会得到解决办法。@pollux1er请查看感谢提供此有用的链接。我测试了@Nadeshwaran,它正在工作。它直接使用R&OSPDF类来加载文件,效果很好!谢谢你的帮助,你能写一行吗?$this->cezpdf->ezStream(array('download'=>1));
$this->cezpdf->ezStream(array $options);