2013-02-05 37 views
2

我在CodeIgniter中工作。我想要做的是讀取Excel文件並保存到數據庫。要閱讀Excel文件,我正在使用this library。上傳完成後,在讀取Excel文件,我收到此錯誤:CodeIgniter:允許的內存耗盡

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 71 bytes) in /home/webscwi1/public_html/projects/OnlineExam/application/libraries/excel_reader.php on line 430

無論如何,我可以將內存的大小,從爲12Mb更改爲512MB,我仍然得到同樣的錯誤。我不知道什麼是確切的錯誤,我想知道這是服務器錯誤還是代碼中的問題。

附加信息:如果我上傳的文件有15行,它的正常工作,但如果我在Excel 90行我收到此錯誤上傳:

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

感謝所有。

+1

到底有多大,你正在閱讀的文件嗎?即使使用較小的文件也會發生嗎?你在使用循環嗎?您應該提供更多信息... –

+0

感謝您的回覆,文件大小隻有64kb –

+0

請檢查excel庫。我在Excel庫中出錯。 https://github.com/EllisLab/CodeIgniter/wiki/Excel-Reader-Class –

回答

3

您應該增加你的內存限制:

  • 編輯php.ini文件

    memory_limit的= 512M

OR

  • 包括該行你的頂部cript

    ini_set(「memory_limit」,「512M」);

您也應該檢查是否該線在你的.htaccess:

php_value memory_limit <value> 
php_value upload_max_filesize <value> 

它們的值重寫PHP配置。所以他們應該反映您的需求,或者乾脆被刪除。

0

你應該在你的文件添加屬性php_value NameOfProject /的.htaccess

相關問題