как побороть ошибку "The use statement with non-compound name 'Yii' has no effect"
у меня есть файл конфигурации консольного приложения
<?php
use Yii;
$params = array_merge(
require __DIR__ . '/../../common/config/params.php',
require __DIR__ . '/../../common/config/params-local.php',
require __DIR__ . '/params.php',
require __DIR__ . '/params-local.php'
);
return [
'id' => 'app-console',
'basePath' => dirname(__DIR__),
'bootstrap' => ['log'],
'controllerNamespace' => 'console\controllers',
'aliases' => [
'@bower' => '@vendor/bower-asset',
'@npm' => '@vendor/npm-asset',
],
'controllerMap' => [
'fixture' => [
'class' => 'yii\console\controllers\FixtureController',
'namespace' => 'common\fixtures',
],
],
'components' => [
'log' => [
'targets' => [
[
'class' => 'yii\log\FileTarget',
'levels' => ['error', 'warning'],
],
],
],
'user' => [
'class' => 'yii\web\User',
'identityClass' => 'app\models\User',
//'enableAutoLogin' => true,
'enableSession' => false,
'enableAutoLogin' => false,
],
'session' => [ // for use session in console application
'class' => 'yii\web\Session'
],
'urlManager' => [
'class' => 'yii\web\UrlManager',
'scriptUrl' => Yii::getAlias('@webfront'),
],
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
'viewPath' => '@app/mail',
'transport' => [
'class' => 'Swift_SmtpTransport',
'host' => '////',
'username' => Yii::$app->params['sellerEmail'],
'password' => '////',
'port' => '////',
// 'encryption' => 'tls',
],
'messageConfig' => [
'from' => [Yii::$app->params['supportEmail'] => 'Почтовый робот']
],
],
],
'params' => $params,
];
Как видите в нескольких местах я вызываю Yii::$app. Запускаю выполнение скрипта в консоли и получаю
Warning: The use statement with non-compound name 'Yii' has no effect in .../www/console/config/main.php on line 2. Ладно, комментирую //use Yii; получаю Yii not found
Насколько я понимаю суть происходящего, то в первом случае оно говорит, что мол не надо подключать Yii, т.к. где-то выше, хз где оно уже подключено. Но когда я его не подключаю, то оно не может его найти и оказывается, что где-то выше хз где, оно на самом деле не подключено.
У меня вопрос: в чём суть ошибки? и почему yii не надо подключать, если всегда всё подключается в том файле, который исполняется?
И есть ли разница между Yii::getAlias('@webfront') и \Yii::getAlias('@webfront') ?