Yii2. Входные скрипты

project author

Если Вам понравился данный материал, поделитесь им с вашими друзьями в соц сетях


В Yii существует два вида приложений: веб приложение и консольное приложение.

Входные скрипты — это первое звено в процессе начальной загрузки любого из этих видов приложения. Соответственно веб приложение занимается обработкой - веб запросов, а консольное приложение – консольных команд.

Пользователи делают запрос к входному скрипту, входной скрипт считывает конфигурацию приложения, и создает объект приложения передавая в него полученную конфигурацию.

Давайте рассмотрим код входных скриптов веб и консольного приложений.

 

Код входного скрипта веб приложения шаблона "basic"
(файл "web/index.php")

<?php

// объявление глобальных констант
// comment out the following two lines when deployed to production
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev');

// регистрация загрузчика классов Composer
require(__DIR__ . '/../vendor/autoload.php');

// подключение файла класса Yii
require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');

// загрузка конфигурации приложения
$config = require(__DIR__ . '/../config/web.php');

// создание и конфигурирование экземпляра приложения,
// а также вызов метода для обработки входящего запроса
(new yii\web\Application($config))->run();

 

Код входного скрипта консольного приложения шаблона "basic"
(файл "yii")

#!/usr/bin/env php
<?php

// объявление глобальных констант
defined('YII_DEBUG') or define('YII_DEBUG', true);

// fcgi не имеют констант по умолчанию STDIN и STDOUT, они определяются по умолчанию
defined('STDIN') or define('STDIN', fopen('php://stdin', 'r'));
defined('STDOUT') or define('STDOUT', fopen('php://stdout', 'w'));

// регистрация загрузчика классов Composer
require(__DIR__ . '/vendor/autoload.php');

// подключение файла класса Yii
require(__DIR__ . '/vendor/yiisoft/yii2/Yii.php');

// загрузка конфигурации приложения
$config = require(__DIR__ . '/config/console.php');

// создание и конфигурирование экземпляра приложения
$application = new yii\console\Application($config);

// вызов метода для обработки входящего запроса
$exitCode = $application->run();
exit($exitCode);

 

Объявление глобальных констант

YII_DEBUG — указывает, что приложение работает в отладочном режиме. Находясь в отладочном режиме, приложение собирает больше информации в логи и покажет детальный стек вызовов в случае возникновения исключения. Соответственно, отладочный режим должен быть использован только в процессе разработки.

(Доступные значения: "TRUE", "FALSE" — по умолчанию)

YII_ENV — указывает в каком окружении запущено приложение. 

(Доступные значения: "prod" - по умолчанию, "dev", "test")

YII_ENABLE_ERROR_HANDLER — указывает нужно ли включать имеющийся в Yii обработчик ошибок.

(Доступные значения: "TRUE" — по умолчанию, "FALSE")

 


  Теги: Yii2