Yii - pseudonimy
Aliasy pomagają nie zakodować na stałe bezwzględnych ścieżek ani adresów URL w projekcie. Alias zaczyna się od znaku @.
Aby zdefiniować alias, należy wywołać rozszerzenie Yii::setAlias() metoda -
// an alias of a file path
Yii::setAlias('@alias', '/path/to/alias');
// an alias of a URL
Yii::setAlias('@urlAlias', 'http://www.google.com');Możesz również uzyskać nowy alias z istniejącego -
Yii::setAlias('@pathToSomewhere', '@alias/path/to/somewhere');Możesz wywołać metodę Yii :: setAlias () w skrypcie wejściowym lub we właściwości zapisywalnej zwanej aliasami w konfiguracji aplikacji -
$config = [
   'id' => 'basic',
   'basePath' => dirname(__DIR__),
   'bootstrap' => ['log'],
   'components' => [
      'aliases' => [
         '@alias' => '/path/to/somewhere',
         '@urlAlias' => 'http://www.google.com',
      ],
      //other components...
   ]
]Aby rozwiązać alias, powinieneś wywołać metodę Yii :: getAlias ().
Yii wstępnie definiuje następujące aliasy -
- @app - Podstawowa ścieżka aplikacji. 
- @yii - Folder, w którym znajduje się plik BaseYii.php. 
- @webroot - Katalog główny aplikacji w sieci Web. 
- @web - Podstawowy adres URL aplikacji. 
- @runtime- Ścieżka czasu wykonywania aplikacji. Domyślnie @ app / runtime. 
- @vendor- Katalog dostawcy Composer. Domyślnie @ app / vendor. 
- @npm- Katalog główny dla pakietów npm. Domyślnie @ vendor / npm. 
- @bower- Katalog główny dla pakietów bower. Domyślnie @ vendor / bower. 
Teraz dodaj nową funkcję o nazwie actionAliases () do elementu SiteController -
public function actionAliases() {
   Yii::setAlias("@components", "@app/components");
   Yii::setAlias("@imagesUrl", "@web/images");
   var_dump(Yii::getAlias("@components"));
   var_dump(Yii::getAlias("@imagesUrl"));
}W powyższym kodzie utworzyliśmy dwa aliasy: @components dla komponentów aplikacji i @imagesUrl dla adresu URL, w którym przechowywaliśmy wszystkie obrazy aplikacji.
Wpisz http: // localhost: 8080 / index.php? R = site / aliases, zobaczysz następujące dane wyjściowe -
