fopen
schlägt fehl, wenn ich versuche, eine sehr moderat große Datei in PHP
einzulesen. A 6 meg file
macht es ersticken, obwohl kleinere Dateien um 100k
sind in Ordnung. Ich habe gelesen, dass es manchmal notwendig ist, PHP
mit dem -D_FILE_OFFSET_BITS=64
Flag zu rekompilieren, um Dateien über 20 Gigs oder etwas lächerlich zu lesen, aber sollte ich keine Probleme mit einer 6-Megabyte-Datei haben? Schließlich wollen wir Dateien lesen, die etwa 100 MB groß sind, und es wäre schön, sie öffnen zu können und dann Zeile für Zeile mit Fgets durchzulesen, wie ich es mit kleineren Dateien machen kann.Das Lesen sehr großer Dateien in PHP
Was sind Ihre Tricks/Lösungen zum Lesen und Ausführen von Operationen an sehr großen Dateien in PHP
?
Update: Hier ist ein Beispiel für einen einfachen Codeblock, der auf meiner 6-Megapixel-Datei fehlschlägt - PHP scheint keinen Fehler zu werfen, es gibt nur false zurück. Vielleicht mache ich etwas extrem dummes?
Ein weiteres Update: Vielen Dank für Ihre Hilfe, es erwies sich als etwas unglaublich dumm - ein Problem mit Berechtigungen. Meine kleine Datei hatte unerklärlicherweise Leseberechtigungen, wenn die größere Datei dies nicht tat. Do!
Versuchen Sie, nur durch die Datei zu übergeben? dh. Herunterladen? Oder parst du tatsächlich die Daten in den Dateien für einen bestimmten Zweck? Danke. – DreamWerx
sollte es nicht fehlschlagen, ohne eine Warnung/einen Fehler zu erzeugen. Bitte schalten Sie alle Fehler mit error_reporting (E_ALL) ein und stellen Sie sicher, dass display_errors aktiviert ist, um sie in Ihrem Browser anzuzeigen, oder überprüfen Sie das Fehlerprotokoll Ihres Webserver. –