Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

Классы начальной загрузки в Yii 2

Классы начальной загрузки

Иногда вы можете захотеть выполнить некоторый код своего расширения в стадии начальной загрузки приложения. Например, ваше расширение может ответить на событие приложения beginRequest, чтобы установить некоторые настройки окружения. Вы можете в инструкции по установке вашего приложения написать, что необходимо назначить обработчик события beginRequest, но лучшим способом будет сделать это автоматически.



Для достижения этой цели вы можете создать так называемый класс начальной загрузки, реализовав интерфейс [[yii\base\BootstrapInterface]]. Например,

namespace myname\mywidget;

use yii\base\BootstrapInterface;
use yii\base\Application;

class MyBootstrapClass implements BootstrapInterface
{
    public function bootstrap($app)
    {
        $app->on(Application::EVENT_BEFORE_REQUEST, function () {
             // остальной код
        });
    }
}

Затем нужно добавить этот класс в файл composer.json вашего расширения, как показано далее,

{
    // ...

    "extra": {
        "bootstrap": "myname\\mywidget\\MyBootstrapClass"
    }
}

Когда расширение будет установлено в приложение, Yii автоматически инициирует экземпляр класса начальной загрузки и вызовет его метод [[yii\base\BootstrapInterface::bootstrap()|bootstrap()]] в процессе начальной загрузки каждого запроса.

Заберите ссылку на статью к себе, чтобы потом легко её найти ;)

Выберите, то, чем пользуетесь чаще всего:

Спасибо за внимание, оставайтесь на связи! Ниже ссылка на форум и обсуждение ; )


Обсудить эту статью

INFO: Вы отправляете сообщение как 'Гость'