сохранить три PDF с помощью Fpdf PHP - PullRequest
0 голосов
/ 29 августа 2018

Я использую FPDF, чтобы сохранить PDF с помощью преобразования текста.

Я использую следующий код:

   <?php
require('fpdf.php');
class PDF extends FPDF
{

function ChapterBody($file)
{
    // Read text file
    $txt = file_get_contents($file);
    $txt = str_replace("{{id_no}}","002",$txt);
    // Times 12
    $this->SetFont('Times','',12);
    // Output justified text
    $this->MultiCell(0,5,$txt);
    // Line break
    $this->Ln();
    // Mention in italics
    $this->SetFont('','I');
    //$this->Cell(0,5,'(end of excerpt)');
}

function PrintChapter($num, $title, $file)
{
    $this->AddPage();
   // $this->ChapterTitle($num,$title);
    $this->ChapterBody($file);
}
}


for($i=0;$i<3;$i++)
{
$pdf = new PDF();
$pdf->PrintChapter('','A RUNAWAY REEF','test.txt');
$pdf->Output('test'.$i.'.pdf','D');
}
?>

Я использовал for loop для загрузки файла pdf 3 раза, но когда я выполняю этот код, он загружается только один раз с именем файла test0.pdf, почему test1.pdf and test2.pdf id не загружается с использованием этого кода?

Ответы [ 2 ]

0 голосов
/ 29 августа 2018

Вы не можете загрузить 3 файла вместе, поскольку протокол HTTP был разработан для отправки только одного файла на запрос.

Вам необходимо хранить 3 файла по одному в папке сервера, а затем их можно сжать. В этом ответе объясняется, как сохранить файлы в zip-файле и загрузить его.

0 голосов
/ 29 августа 2018

Вы не можете. Это не ограничение PHP, это ограничение HTTP / веб-браузера. HTTP не предоставляет механизм для отправки нескольких файлов за один запрос.

FPDF не имеет к этому никакого отношения. Если вы хотите отправить 3 файла, вы можете сначала упаковать их в zip, а затем просто отправить zip.

Еще одна трудоемкая альтернатива - написать скрипт, который генерирует несколько файлов, и обмануть его таким образом.

...