wake-up-neo.com

Wie speichere ich von DOMPDF generierten Inhalt in einer Datei?

Ich benutze Dompdf, um PDF file zu erstellen, aber ich weiß nicht, warum die erstellte PDF auf dem Server nicht gespeichert wird.

Irgendwelche Ideen?

require_once("./pdf/dompdf_config.inc.php");
    $html =
      '<html><body>'.
      '<p>Put your html here, or generate it with your favourite '.
      'templating system.</p>'.
      '</body></html>';

    $dompdf = new DOMPDF();
    $dompdf->load_html($html);
    $dompdf->render();
    file_put_contents('Brochure.pdf', $dompdf->output());
48
user1079810

Ich habe gerade Dompdf verwendet und der Code war ein wenig anders, aber es hat funktioniert.

Hier ist es:

require_once("./pdf/dompdf_config.inc.php");
$files = glob("./pdf/include/*.php");
foreach($files as $file) include_once($file);

$html =
      '<html><body>'.
      '<p>Put your html here, or generate it with your favourite '.
      'templating system.</p>'.
      '</body></html>';

    $dompdf = new DOMPDF();
    $dompdf->load_html($html);
    $dompdf->render();
    $output = $dompdf->output();
    file_put_contents('Brochure.pdf', $output);

Der einzige Unterschied besteht darin, dass alle Dateien im Include-Verzeichnis enthalten sind.

Ansonsten wäre mein einziger Vorschlag, einen vollständigen Verzeichnispfad zum Schreiben der Datei und nicht nur den Dateinamen anzugeben.

83
startupsmith

Ich habe Ihren Code getestet und das einzige Problem, das ich feststellen konnte, war die fehlende Berechtigung für das Verzeichnis, in das Sie die Datei schreiben möchten.

Geben Sie dem Verzeichnis, in das Sie die Datei schreiben möchten, die Berechtigung "Schreiben". In Ihrem Fall ist es das aktuelle Verzeichnis.

Verwenden Sie "chmod" unter Linux.

Fügen Sie "Jeder" mit aktiviertem "Schreiben" zur Registerkarte "Sicherheit" des Verzeichnisses hinzu, wenn Sie Windows verwenden.

1
Charlie