我在CodeIgniter工作。我想要做的是读取Excel文件并保存到数据库。要阅读Excel文件,我使用的是this library。上传后,在阅读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];
感谢所有人。
答案 0 :(得分:6)
你应该增加内存限制:
编辑php.ini文件
memory_limit = 512M
OR
在剧本顶部包含此行
的ini_set( “memory_limit的”, “512M”);
您还应该检查.ttaccess上是否有这些行:
php_value memory_limit <value>
php_value upload_max_filesize <value>
他们的值会覆盖php配置。所以他们应该反映你的需求,或者只是被删除。
答案 1 :(得分:0)
您应该在文件中添加属性php_value NameOfProject / .htaccess
<IfModule mod_rewrite.c> php_value memory_limit 256M </IfModule>
答案 2 :(得分:0)
此内存溢出可能是上次查询的自动保存,您可以$this->db->save_queries = false;
或为'save_queries' => FALSE,
更改文件config / database.php