Задать вопрос
KonstantinPR
@KonstantinPR
Разработчик PHP, VBA

Не найден класс Yii2?

Вообще вопрос такой: какой самый простой способ вы знаете вытащить из excel файла всю таблицу и поместить ее в массив в проекте Yii2.

Делал раньше проект на ООP MVC без фреймворков - необходимо было вытащить данные из excel и пользоваться ими для анализа. Никаких проблем не было - подключил один из готовых решений (https://github.com/PHPOffice/PHPExcel) и все ок, без гемора и танцев.
И вот сел на Yii2. 3й день пытаюсь подключить - безрезультатно. Накачал кучу классов, накомпозил кучу проектов - то namespacы вылазят, то класс не находит. Если кто знает верное решение - поделитесь плиз.

А пока вопрос такой - почему не находит в модель Excel?

5a060fca2729b687086584.png5a060fd0d53cf282924129.png5a060fd79318e906725370.png5a060fdcaca6f661550496.png5a060fe272915583986239.png

Спасибо
  • Вопрос задан
  • 365 просмотров
Подписаться 2 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 3
slo_nik
@slo_nik Куратор тега Yii
Доброй ночи.
Если у Вас модель Excel находится в models, то почему в namespace Вы пишите moonland/phpexcel?
Пишите app\models
Я пользовался подобным расширением, но это было расширение PHPOffice/PhpExcel
Установил через composer и обращался к классам расширение так:
$objInputType = \PHPExcel_IOFactory::identify($fileInput);
        $objReader = \PHPExcel_IOFactory::createReader($objInputType);

В namespace и в use не указывал путь к расширению вообще.
Ответ написан
Комментировать
namespace для модели нужно писать так app\models, а не так как вы там придумали
Ответ написан
Комментировать
qonand
@qonand
Software Engineer
И вот сел на Yii2. 3й день пытаюсь подключить - безрезультатно. Накачал кучу классов, накомпозил кучу проектов - то namespacы вылазят, то класс не находит. Если кто знает верное решение - поделитесь плиз

Так может стоит перед тем как садиться документацию полистать? в которой четко сказано

Yii relies on the class autoloading mechanism to locate and include all required class files. It provides a high-performance class autoloader that is compliant with the PSR-4 standard
ознакомится с стандартом автозагрузки классов и разобраться как работают пространства имен?
Ваши ошибки связаны с незнанием этого, некоторые решение уже предложили slo_nik и Андрей Саныч . Но тем не менее Вам все равно стоит почитать и разобраться с пространствами имен, если не хотите сталкиваться с подобными проблемами на каждом шагу
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы