Dompdf: "Maximale Ausführungszeit von 30 Sekunden überschritten"
Konsequent (also jedes mal), die ich versuche zu laden, wird eine relativ große Menge von HTML in Bezug auf einen client in form dompdf. Ich bekomme entweder die Subjekt-oder Fehlermeldung, gelegentlich, einige andere Fehler. Wenn ich kommentieren Sie den code für jeden was wären 9 Seiten in einem PDF-Dokument, funktioniert es.
Ich habe das gleiche problem in der Vergangenheit mit variabler Länge reports (dies ist eine form, die immer 9 Seiten), sobald eine gewisse unbestimmte kritische Masse an Daten erreicht ist. Andere Beiträge, die ich gesehen habe im Zusammenhang mit diesem Thema immer auch follow-up-Kommentare, die darauf bestehen, dass der original-poster bieten die HTML. Ich habe versucht zu tun, aber es weit mehr als das limit erlaubt.
Zur Verringerung der Menge von HTML würde das Ergebnis in HTML, dompdf kein problem haben würde, rendering, also ich bin mir nicht sicher, wie Sie Vorgehen um eine Lösung für dieses. Ich könnte mit einem link auf die Seite, aber es würde erfordern Benutzername & Passwort für den Zugriff und die daraus resultierende Seite würde enthalten Informationen, die nicht für die öffentlichkeit bestimmt.
Wenn es keine Hilfe, hier gewesen zu sein, kann jemand mir ein anderes forum wo ich Hilfe bekommen könnte?
Hier sind ein paar Einzelheiten über die HTML -, die ich kann Liste, die vielleicht helfen bei der Diagnose des Problems:
- Es ist gebaut, fast ausschließlich mit HTML-Tabellen.
- Keine der Tabellen span
mehrere Seiten. - Gibt es keine textarea-Steuerelemente.
Die Tabellen, die nicht über mehrere Seiten erstrecken, aber nicht alle Zellen der Tabelle? Das ist wirklich der einzige Ort, wo dompdf hat Probleme mit Tabellen. Obwohl, im Allgemeinen, dompdf nicht mehr Ressourcen beim Rendern von Tabellen. Auch, welche version von dompdf verwenden Sie?
Haben Sie keine Bilder in Ihrem PDF-Dokument? Wenn ich habe dompdf in der Vergangenheit mit großen Bildern, es neigt zu Abstürzen, aber nach dem reduzieren der Bildgröße scheint es gut zu funktionieren.
Ich bin mir relativ sicher, den Fehler hat nichts zu tun mit einer Zeit limit, aber um so mehr mit dem Volumen der text. Erstellt habe ich eine andere sehr ähnliche form, dass, wenn es erreicht 9 Seiten führte zu einem "keine Daten empfangen" - Nachricht. Ich glaube nicht, dass es ein problem mit meinem code, weil, wenn ich entfernen Sie die " pdf " - suffix und damit der browser rendert HTML-Seite angezeigt wird, in ein paar Sekunden oder weniger. Dies ist nicht eine Daten-intensiven form, wie es gibt nur einen Datensatz aus unserer Datenbank. Es ist ein Formular, das füllt nur minimale Informationen-und soll ausgedruckt werden und der Benutzer füllt die fehlenden Infos per hand.
Der nur Bilder in der form sind kleine (2k) checkbox-PNGs. Wieder, wenn ich zufällig Kommentar genug-code die PDF-Datei gerendert wird. Es ist nicht so, es gibt gewisse code-Zeilen, die das verursachen. Und mit den berichten wo ich ' ve hatte dieses problem, wo die gleiche Art von Daten, die wiederholt über mehrere Zeilen, es funktioniert, bis mehr als ein paar hundert Zeilen zurückgegeben werden, und dann stirbt Sie.
InformationsquelleAutor Mike | 2014-01-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier gesetzten Frist, die in Sekunden. Set -1 für unbegrenzt Zeit zu begrenzen. set_time_limit(500);
Ja @4levels, dies ist keine langfristige Lösung.
InformationsquelleAutor Indrajeet Singh
Ich hatte ähnliche Probleme mit domPdf als auch, und konnte es nicht lösen. Ich denke, man könnte immer bleibe ein ini_set für max_execution_time in Ihrem controller, wenn Sie stecken.
Schließlich zog ich zu MPDF und das funktioniert wirklich gut für mich. Es scheint, die meisten tragbaren und gut gepflegt PHP-HTML zu PDF-Bibliothek, die ich gefunden habe.
Ich bin mir nicht sicher, sollte ich diesen post als eine Antwort oder einen Kommentar, lassen Sie mich wissen, wenn ein Kommentar Hinzugefügt werden soll, statt.
InformationsquelleAutor Ben Hitchcock
Ist es mir passiert, und das problem war eher eine kleine.
Neben einer Erhöhung der Zeitbegrenzung, Sie überprüfen, ob Ihr Inhalt überlaufen oder nicht, ich war die Einstellung Papierformat als A4, aber wenn ich es geändert A3, wird die Seite korrekt dargestellt wird und daher nicht nahm, lange Zeit (für Bibliothek, um herauszufinden, die Seite overflow)
setPaper()
für neuere Versionen (mehr info)InformationsquelleAutor Saad
Ich weiß, das wurde beantwortet, aber ich möchte nur hinzufügen, DOMPDF nicht wie verschachtelte Tabellen
http://eureka.ykyuen.info/2011/04/29/php-dompdf-render-timeout-problem/
Ich landete wkhtmltopdf.org zu, aber ich habe die knp-bissig-Bibliothek als meine PHP-Bibliothek zu sitzen dazwischen, überhaupt keine Probleme, da hab ich das über einen Monat oder zwei, nachdem ich diesen post schrieb. In all meinen Projekten, da zu.
InformationsquelleAutor Phil Young