Добавление композитора в Codeigniter
Я использую Codeigniter с года, и я также начал изучать Laravel недавно, и я заметил, что наличие композитора в вашей структуре действительно помогает вам во многих отношениях.
Я замечаю, что Codeigniter 3 имеет эту опцию в config.php-файл для добавления в него композитора.
$config['composer_autoload'] = TRUE;
Поэтому я думаю добавить композитора в свой CI.
Это лучшая практика, чтобы добавить композитор в КИ?
Какой должна быть структура каталогов для этого и работает ли она гладко с Ки?
2 ответа:
Вот как я реализовал composer в CodeIgniter 3.It это очень просто. Вы должны установить composer на свой компьютер, и я думаю, что у вас это есть, потому что вы используете laravel.
- первая копия и вставка composer.JSON-файл в папке проекта в папке приложения
- секунда в конфигурации.php файл
$config['composer_autoload'] = TRUE;
Теперь у вас есть композитор в вашем проекте. Я покажу вам пример, как установить mpdf с помощью composer
- откройте cmd и перейдите к приложению папка
- внутренний тип каталога приложений
composer require mpdf/mpdf
Теперь папка поставщика будет создана внутри папки приложения и внутри поставщика папка вы можете увидеть все ваши пакеты, загруженные composer.
Теперь, когда вы загрузили composer, вы можете просто использовать код, приведенный в официальном руководстве mpdf, как
function m_pdf(){ $mpdf = new mPDF(); // Write some HTML code: $mpdf->WriteHTML('Hello World'); // Output a PDF file directly to the browser $mpdf->Output(); }
Вы можете установить любые пакеты в https://packagist.org/ как mpdf очень просто, как это. Помните, что вам не нужно вводить require_once APPPATH.- /поставщик / mpdf / mpdf/mpdf.php'; так как вы уже автозагрузчик композитора. Если вы не предпочитаете autoload composer, вы должны ввести require_once APPPATH.- /поставщик / mpdf / mpdf/mpdf.php' в начале каждого контроллера, где вы используете библиотеки поставщиков mpdf.
По моему опыту, лучший способ-установить composer и зависимости, независимые от CodeIgniter, такие как "composer require", а затем предоставить доступ к пакетам в вашем базовом контроллере. добавьте файл MY_Controller.php в папку application / core и сделать его расширение CI_Controller. затем добавьте require_once (APPPATH . - поставщик / автопогрузчик.php') вверху. сделайте так, чтобы все ваши контроллеры расширяли этот базовый класс, и у вас будет доступ ко всем вашим пакетам. то же самое происходит, если вы хотите получить доступ к ним в ваших моделях. сделайте базовый класс MY_Model.php