Yii2 - компоненты, создание и использование

Анна

тут немного

В yii2 есть компоненты. Их можно назвать аналогами сервисов в symfony.

В корне проекта необходимо проверить наличие каталога component если его нет - необходимо его создать.

Реализуем простой компонент:

<?php
 
namespace app\components;
 
use yii\base\Component;
 
class SimpleComponent extends Component
{

    public function simpleAction()
    {
        // что-то делаем
    }
 
}

В зависимости от того, где Вам нужно вызывать методы компонента (web или консоль), добавим информацию о компоненте в соответствующий конфигурационный файл config/console.php или config/web.php

$config = [
    ...
    'components' => [
        ...
        'SimpleComponent' => [
            'class' => 'app\components\SimpleComponent',
        ],
        ...
    ],
    ...
];
...

Далее в коде, в необходимых местах используем компонент:

...
\Yii::$app->SimpleComponent->simpleAction();
...