4

私は CodeIgniter で作業しています。私がやろうとしているのは、Excel ファイルを読み込んでデータベースに保存することです。Excelファイルの読み込みには、このライブラリを使用しています。アップロード後、Excel ファイルの読み取り中に、次のエラーが発生します。

致命的なエラー: 行 430 の /home/webscwi1/public_html/projects/OnlineExam/application/libraries/excel_reader.php で 134217728 バイトの許容メモリ サイズが使い果たされました (71 バイトを割り当てようとしました)

とにかく、メモリ サイズを 12Mb から 512Mb に変更できますが、それでも同じエラーが発生します。正確なエラーが何かわかりません。これがサーバー エラーなのか、コードの問題なのかを知りたいのです。

追加情報: 15 行のファイルをアップロードすると問題なく動作しますが、Excel で 90 行をアップロードすると、次のエラーが発生します。

 $this->load->library('excel_reader');
 $this->excel_reader->read('question/'.$filename);
 $worksheet = $this->excel_reader->worksheets[0];

ありがとうございます。

4

3 に答える 3

9

メモリ制限を増やす必要があります。

  • php.ini ファイルの編集

    メモリ制限 = 512M

また

  • スクリプトの先頭にこの行を含めます

    ini_set("memory_limit","512M");

次の行が .htaccess にあるかどうかも確認する必要があります。

php_value memory_limit <value>
php_value upload_max_filesize <value>

それらの値は、php 構成をオーバーライドします。したがって、それらはあなたのニーズを反映するか、単に削除する必要があります。

于 2013-02-05T11:02:18.367 に答える