2016-12-15 5 views
0

私はphpexcelリーダーを使用して980MBのサイズのcsvファイルを読み込もうとしていますが、私のコードは小さいファイル(最大4MB)を読み込みますが、 phpexcel reader?[私はもっと新しくphpとphpexcel関数を使っています。前もって感謝します。phpexcelリーダーを使用して非常に大きなcsvファイルを読む方法

+0

[大規模なワークシートをPHPExcelで読み込む方法](http://stackoverflow.com/questions/4666746/how-to-read-large-worksheets-from-large-excel-files-27mb-with -phpexcel) –

+0

[PHPExcelはRAMが不足する](http://stackoverflow.com/questions/4817651/phpexcel-runs-out-of-256-512-and-also-1024mb-of-ram) –

+0

そして、 PHPの組み込みの[fgetcsv()](http://www.php.net/manual/en/function.fgetcsv.php)関数がはるかに効率的です。 –

答えて

1

時間がかかり、必要なメモリ量が気にかからない場合は、このスクリプトの値を増やすだけです。あなたのスクリプトは、memory_limitのために良い値を見つける必要があるどのくらいのメモリを見つけることができますmemory_get_usage()機能で

ini_set('memory_limit', '1024M'); 
ini_set('max_execution_time', '300'); 

:ちょうどあなたのスクリプトの先頭に次の行を追加します。

fgets()を見ると、1行ずつファイルを読むことができます。メモリが少なくて済むかどうかはわかりませんが、実際にはこれはうまくいくと思います。しかし、この場合でも、max_execution_timeを高い値に増やす必要があります。 あなたはrequirmentごとに猶予時間を増やすことができます。

+0

ありがとうございます応答。私はcodeigniterを使用しています、私はこれらの行を私のコントローラに含めましたか?しかし、私はまだこのエラーを持っています - 'outofmemory'は、phpexcelreaderでより多くのメモリスペースを割り当てようとしていますか? – Priya

関連する問題