Используя механизм начальной загрузки можно выполнить определенный код до запуска приложения и обработки входящего запроса.
"Bootstrap" переводится как "начальная загрузка" или "предзагрузка". Для создания предзагрузки в Yii2, обычно, создается одноименный файл Bootstrap.php с классом, который должен реализовывать интерфейс BootstrapInterface и его метод bootstrap():
<?php

namespace common\modules\languages

use yii\base\BootstrapInterface;


class Bootstrap implements BootstrapInterface
{
    public function bootstrap($app)
    {
        //
    }
}
В данном примере, я разместил файл Bootstrap.php в папке common\modules\languages.

Согласно документации, классы предзагрузки подключаются при выполнении метода конструктора класса приложения методом init(). На самом деле класс приложения, например WEB-приложения vendor/yiisoft/yii2/web/Application, использует последовательное наследование вплоть до класса vendor/yiisoft/yii2/base/Object, в котором и объявляется метод init(). Далее метод init() переопределяется уже в базовом классе приложения vendor/yiisoft/yii2/base/Application и вызывает метод bootstrap() данного класса, который и запускает компоненты предзагрузки.



Подключение.

Подключить файл предварительной загрузки можно:

1. В одном из конфигурационных файлов Yii2, например frontend/config/main.php:
 return [   
   'sourceLanguage' => 'ru', // использован в качестве ключей переводов
    'id' => 'app-frontend',
    'basePath' => dirname(__DIR__),
    'bootstrap' => [
        'log',
        'common\modules\languages\Bootstrap',
    ],
тут указывается пространство имен подключаемого класса Bootstrap. Соответственно файл Bootstrap.php нужно создать в папке common\modules\languages.

Помимо указания класса Bootstrap, можно указать всего лишь название зарегистрированного компонента, например модуля:
'modules' => [
    'languages' => [
        'class' => 'common\modules\languages\Module',
    ],
],
'bootstrap' => [
    'log',
    'languages'
],
Класс данного модуля (languages) так же должен реализовывать интерфейс BootstrapInterface и метод bootstrap().


2. При создании расширения для Yii2, можно указать класс Bootstrap в файле composer.json расширения:
"extra": {
        "bootstrap": "klisl\\languages\\Bootstrap"
    },
В данном случае, у класса пространство имен «klisl\languages».


3. В "точке входа" - файле index.php.
Фреймворк Yii2 версии Advanced в файлах index.php уже содержит строки подключения файлов bootstrap.php:
require(__DIR__ . '/../config/bootstrap.php');
Файлы содержатся в соответствующих папках и в них можно включить нужный код, который не связан с фреймворком и его компонентами т.к. в этих файлах не будет доступа к объекту приложения (Yii::$app и др.) – файлы подключаются до инициализации приложения. Для версии Basic можно создать и подключить аналогичные файлы в index.php.