Commit f6b760dc by zxcq544

Update concept-autoloading.md

parent 39bd4b98
...@@ -25,19 +25,13 @@ $classFile = Yii::getAlias('@' . str_replace('\\', '/', $className) . '.php'); ...@@ -25,19 +25,13 @@ $classFile = Yii::getAlias('@' . str_replace('\\', '/', $className) . '.php');
Например, если полное имя класса `foo\bar\MyClass`, то [псевдоним пути(alias)](concept-aliases.md) данного файла будет Например, если полное имя класса `foo\bar\MyClass`, то [псевдоним пути(alias)](concept-aliases.md) данного файла будет
`@foo/bar/MyClass.php`. Для того, чтобы данный псевдоним превратился в путь файла в файловой системе нужно чтобы либо `@foo` либо `@foo/bar` был [корневой ссылкой(root alias)](concept-aliases.md#defining-aliases). `@foo/bar/MyClass.php`. Для того, чтобы данный псевдоним превратился в путь файла в файловой системе нужно чтобы либо `@foo` либо `@foo/bar` был [корневой ссылкой(root alias)](concept-aliases.md#defining-aliases).
При использовании [Basic Application Template](start-basic.md), вы можете хранить свои классы в пространствах имен ниже `app`, тогда вам не понадобится указывать новый псевдоним пути для автозагрузки вашего класса. Это работает потому что При использовании [простого шаблона (Basic Application Template)](start-basic.md), вы можете хранить свои классы в пространствах имен ниже `app`, тогда вам не понадобится указывать новый псевдоним пути для автозагрузки вашего класса. Это работает потому что
`@app` является [уже установленной ссылкой](concept-aliases.md#predefined-aliases), а такое имя класса как `app\components\MyClass` `@app` является [уже установленной ссылкой](concept-aliases.md#predefined-aliases), а такое имя класса как `app\components\MyClass`
преобразуется в путь преобразуется в путь
`папкавашегоприложения/components/MyClass.php`. `папкавашегоприложения/components/MyClass.php`.
Т.е. нижеприведенный файл будет загружен автоматически если находится в папке components вашего приложения и называется MyClass.php.
```php
namespace app\components;
class MyClass {
}
```
В [Advanced Application Template](tutorial-advanced-app.md), каждый уровень приложения обладает собственной корневой ссылкой. Например, для front-end части корневой ссылкой является `@frontend`, а для back-end части `@backend`. Это позволяет включать классы front-end части в пространство имен(namespace) ниже 'frontend', а для back-end части ниже 'backend'. При таком подходе ваши классы будут автоматически загружены автозагрузчиком Yii.
В [шаблоне продвинутого приложения (Advanced Application Template)](tutorial-advanced-app.md), каждый уровень приложения обладает собственной корневой ссылкой. Например, для front-end части корневой ссылкой является `@frontend`, а для back-end части `@backend`. Это позволяет включать классы front-end части в пространство имен(namespace) ниже 'frontend', а для back-end части ниже 'backend'. При таком подходе ваши классы будут автоматически загружены автозагрузчиком Yii.
Карта классов <a name="class-map"></a> Карта классов <a name="class-map"></a>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment