Я работаю в CodeIgniter. То, что я пытаюсь сделать, это прочитать файл Excel и сохранить его в базе данных. Чтобы прочитать файл Excel, я использую эту библиотеку . После загрузки, прочитав файл Excel, я получаю эту ошибку:
Неустранимая ошибка: разрешенный размер памяти 134217728 байт исчерпан (пытался выделить 71 байт) в /home/webscwi1/public_html/projects/OnlineExam/application/libraries/excel_reader.php в строке 430
Во всяком случае, я могу изменить размер памяти с 12 Мб до 512 Мб, я все равно получаю ту же ошибку. Я не знаю, что такое точная ошибка, и я хочу знать, является ли это ошибкой сервера или проблемой в коде.
Дополнительная информация: Если я загружаю файл с 15 строками, он работает нормально, но если я загружу 90 строк в Excel, я получаю эту ошибку:
$this->load->library('excel_reader'); $this->excel_reader->read('question/'.$filename); $worksheet = $this->excel_reader->worksheets[0];
Спасибо всем.
Вы должны увеличить лимит памяти:
редактирование файла php.ini
memory_limit = 512M
ИЛИ
включая эту строку в верхней части вашего скрипта
ini_set ( "memory_limit", "512M");
Вы также должны проверить, находятся ли эти строки на вашем .htaccess:
php_value memory_limit <value> php_value upload_max_filesize <value>
Их значения переопределяют конфигурацию php. Поэтому они должны отражать ваши потребности или просто удаляться.
Вы должны добавить атрибут php_value в свой файл NameOfProject / .htaccess
<IfModule mod_rewrite.c> php_value memory_limit 256M </IfModule>