Рейтинг:  0 / 5

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

Использование расширений в Yii 2

Использование расширений

Чтобы использовать расширение, вам необходимо установить его. Большинство расширений распространяются как пакеты Composer, которые могут быть установлены посредством следующих двух шагов:

  1. Отредактируйте файл вашего приложения composer.json, указав, какие расширения (пакеты Composer) вы хотите установить.
  2. Выполните команду php composer.phar install, чтобы установить указанные расширения.


Обратите внимание, что вам может потребоваться установить Composer, если у вас его нет.

По умолчанию, Composer устанавливает пакеты, зарегистрированные на Packagist - крупнейшем репозитории для пакетов Composer с открытым исходным кодом. Вы также можете создать свой репозиторий и настроить Composer для его использования. Это полезно, если вы разрабатываете закрытые расширения и хотите использовать их в нескольких своих проектах.

Расширения, установленные Composer'ом, хранятся в директории BasePath/vendor, где BasePath - базовая директория приложения. Composer - это менеджер зависимостей, и поэтому после установки пакета он также установит все зависимые пакеты.

Например, для установки расширения yiisoft/yii2-imagine нужно отредактировать ваш composer.json как показано далее:

{
    // ...

    "require": {
        // ... другие зависимости

        "yiisoft/yii2-imagine": "~2.0.0"
    }
}

После установки вы можете увидеть директорию yiisoft/yii2-imagine, находящуюся по пути BasePath/vendor. Также вы можете увидеть директорию imagine/imagine, которая содержит зависимый пакет.

Info: yiisoft/yii2-imagine является базовым расширением, которое разрабатывает и поддерживает команда разработчиков Yii. Все базовые расширения размещены на Packagist и называются yiisoft/yii2-xyz, где xyz является названием расширения.

Теперь вы можете использовать установленное расширение как часть вашего приложения. Следующий пример показывает, как вы можете использовать класс yii\imagine\Image, который содержится в расширении yiisoft/yii2-imagine.

use Yii;
use yii\imagine\Image;

// генерация миниатюры изображения
Image::thumbnail('@webroot/img/test-image.jpg', 120, 120)
    ->save(Yii::getAlias('@runtime/thumb-test-image.jpg'), ['quality' => 50]);

Info: Классы расширений автоматически загружаются автозагрузчиком классов Yii.

Ручная установка расширений

В некоторых редких случаях вы можете захотеть установить некоторые расширения вручную, а не полагаться на Composer. Чтобы сделать это, вы должны

  1. загрузить архив с файлами расширения и распаковать его в директорию vendor.
  2. установить автозагрузчики классов, предоставляемые расширениями, если таковые имеются.
  3. загрузить и установить все зависимые расширения в соответствии с инструкциями.

Если расширение не имеет автозагрузчика классов, но следует стандарту PSR-4, то вы можете использовать автозагрузчик классов, предоставленный Yii для загрузки классов расширений. Всё, что вам нужно сделать, это объявить псевдоним для корневого каталога расширения. Например, если вы установили расширение в директорию vendor/mycompany/myext и классы расширения находятся в пространстве имён myext, то вы можете включить следующий код в конфигурацию вашего приложения:

[
    'aliases' => [
        '@myext' => '@vendor/mycompany/myext',
    ],
]

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

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

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

Log in to comment

Обсуждение этой статьи

ИНФОРМАЦИЯ: Вы оставите комментарий к этой статье как 'Гость'