Добавление композитора в Codeigniter


Я использую Codeigniter с года, и я также начал изучать Laravel недавно, и я заметил, что наличие композитора в вашей структуре действительно помогает вам во многих отношениях.

Я замечаю, что Codeigniter 3 имеет эту опцию в config.php-файл для добавления в него композитора.

$config['composer_autoload'] = TRUE;

Поэтому я думаю добавить композитора в свой CI.

Это лучшая практика, чтобы добавить композитор в КИ?

Какой должна быть структура каталогов для этого и работает ли она гладко с Ки?

2 2

2 ответа:

Вот как я реализовал composer в CodeIgniter 3.It это очень просто. Вы должны установить composer на свой компьютер, и я думаю, что у вас это есть, потому что вы используете laravel.

  • первая копия и вставка composer.JSON-файл в папке проекта в папке приложения
  • секунда в конфигурации.php файл $config['composer_autoload'] = TRUE;

Теперь у вас есть композитор в вашем проекте. Я покажу вам пример, как установить mpdf с помощью composer

  1. откройте cmd и перейдите к приложению папка
  2. внутренний тип каталога приложений 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