У меня проблемы с использованием носик библиотека в Kohana 3.2 для импорта большого файла Excel в MySQL. Вот шаги по установке, которые я предпринял:
В файле портала index.php я добавил следующую строку кода:
require_once APPPATH.DIRECTORY_SEPARATOR.'classes'.DIRECTORY_SEPARATOR.'kohana'.DIRECTORY_SEPARATOR.'Spout'.DIRECTORY_SEPARATOR."Autoloader/autoload.php";
Это мое reader
метод:
public static function reader($filename){
$result = array();
$reader = ReaderFactory::create(Type::XLSX);
$reader->open($filename);
while ($reader->hasNextRow()) {
$row = $reader->nextRow();
$code = $row[1];
$result[] = $code;
}
return $result;
}
Когда я пытаюсь вызвать метод, появляется следующее сообщение об ошибке:
ERROR: ErrorException [ 1 ]: Class 'ReaderFactory' not found ~ APPPATH/classes/kohana/spoutexcel.php [ 70 ]
2015-09-25 14:29:10 --- STRACE: ErrorException [ 1 ]: Class 'ReaderFactory' not found ~ APPPATH/classes/kohana/spoutexcel.php [ 70 ]
Что я делаю неправильно?
Излив можно найти здесь: https://github.com/box/spout
Как вы установили Spout? Если вы использовали Composer, вам нужно будет включить (require_once
) autoload.php
файл, сгенерированный композитором при установке Spout.
Если вы не использовали Composer, вы можете следовать инструкциям здесь: https://github.com/box/spout#manual-installation. Он объясняет, какой файл нужно включить для автозагрузки классов Spout.
И как упоминалось @mrBrown, не забудьте определить пространства имен, используя use Box\Spout\Reader\ReaderFactory;
Вы определили пространство имен?
use Box\Spout\Reader\ReaderFactory;