Yii - Aliase
Aliase helfen Ihnen dabei, absolute Pfade oder URLs in Ihrem Projekt nicht fest zu codieren. Ein Alias beginnt mit dem @ -Zeichen.
Um einen Alias zu definieren, sollten Sie das aufrufen Yii::setAlias() Methode -
// an alias of a file path
Yii::setAlias('@alias', '/path/to/alias');
// an alias of a URL
Yii::setAlias('@urlAlias', 'http://www.google.com');
Sie können auch einen neuen Alias von einem vorhandenen ableiten -
Yii::setAlias('@pathToSomewhere', '@alias/path/to/somewhere');
Sie können die Yii :: setAlias () -Methode im Eingabeskript oder in einer beschreibbaren Eigenschaft namens Aliase in der Anwendungskonfiguration aufrufen.
$config = [
'id' => 'basic',
'basePath' => dirname(__DIR__),
'bootstrap' => ['log'],
'components' => [
'aliases' => [
'@alias' => '/path/to/somewhere',
'@urlAlias' => 'http://www.google.com',
],
//other components...
]
]
Um einen Alias aufzulösen, sollten Sie die Methode Yii :: getAlias () aufrufen.
Yii definiert die folgenden Aliase vor -
@app - Der Basispfad der Anwendung.
@yii - Der Ordner, in dem sich die BaseYii.php-Datei befindet.
@webroot - Das Webstammverzeichnis der Anwendung.
@web - Die Basis-URL der Anwendung.
@runtime- Der Laufzeitpfad der Anwendung. Der Standardwert ist @ app / runtime.
@vendor- Das Composer-Herstellerverzeichnis. Der Standardwert ist @ app / vendor.
@npm- Das Stammverzeichnis für npm-Pakete. Der Standardwert ist @ vendor / npm.
@bower- Das Stammverzeichnis für Bower-Pakete. Der Standardwert ist @ vendor / bower.
Fügen Sie nun dem SiteController eine neue Funktion namens actionAliases () hinzu -
public function actionAliases() {
Yii::setAlias("@components", "@app/components");
Yii::setAlias("@imagesUrl", "@web/images");
var_dump(Yii::getAlias("@components"));
var_dump(Yii::getAlias("@imagesUrl"));
}
Im obigen Code haben wir zwei Aliase erstellt: @components für Anwendungskomponenten und @imagesUrl für URL, in denen wir alle Anwendungsbilder gespeichert haben.
Geben Sie http: // localhost: 8080 / index.php? R = site / aliases ein. Die folgende Ausgabe wird angezeigt: