Как создать свой клас в Yii?

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
volodya81
Сообщения: 21
Зарегистрирован: 2011.06.10, 16:20

Как создать свой клас в Yii?

Сообщение volodya81 »

До уровня простенькой визитки на Yii я почти дорос. Но у меня сейчас стоит задача делать математические расчеты, которые достаточно сложные (много условных переходов, зависимостей и т.д.). Для этого обходиться функциями в контролере будет очень накладно (контролер будет очень большой, будет очень много циклов). Подскажите, как мне свой клас прикрутить к Yii что-бы с контролера я мог его вызвать (в контролере создать его обект)?
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Как создать свой клас в Yii?

Сообщение slavcodev »

А чем отличается создание классов в Yii с не Yii?
Жду Yii 3!
volodya81
Сообщения: 21
Зарегистрирован: 2011.06.10, 16:20

Re: Как создать свой клас в Yii?

Сообщение volodya81 »

mc-bear писал(а):А чем отличается создание классов в Yii с не Yii?
Уточню вопрос:
1. В какую папку записать мой клас(ы).
2. Как его подключить в Yii (надо ли подключать).
3. Как создавать экземпляр этого класса?

Если можна, то простенький пример. Очень прошу!
faeton
Сообщения: 88
Зарегистрирован: 2011.06.06, 01:00

Re: Как создать свой клас в Yii?

Сообщение faeton »

класс

простейший вариант - файл с одноименным классом кинуть в protected/components он автоматически подгрузится при создании экземпляра командой $my_class=new YouClass;

класс объявляется так же как и обычный PHP класс
Изображение
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Как создать свой клас в Yii?

Сообщение slavcodev »

volodya81 писал(а):Уточню вопрос:
1. В какую папку записать мой клас(ы).
2. Как его подключить в Yii (надо ли подключать).
3. Как создавать экземпляр этого класса?

Если можна, то простенький пример. Очень прошу!
1) В любую папку.
2) Либо стандартно include, либо использовать Yii::import ('')
3) Стандартно $a = new Class;
Жду Yii 3!
volodya81
Сообщения: 21
Зарегистрирован: 2011.06.10, 16:20

Re: Как создать свой клас в Yii?

Сообщение volodya81 »

Всем большое спасибо!

Сделал в папке приложения папку myclass
В этой папке создал файл MClassTest.php
В контроллере подключил этот класс так:

Код: Выделить всё

Yii::import('application.myclass.*');
В котроллере экземпляр класса создаю так:

Код: Выделить всё

$b = new MClassTest();
Все работает!!! :D
olgatcpip
Сообщения: 6
Зарегистрирован: 2014.01.13, 17:07

Re: Как создать свой клас в Yii?

Сообщение olgatcpip »

Здравствуйте.

А я создала свой класс в папке моделей. Главное указать namespace

Код: Выделить всё


namespace app\models;

class FuncsClass
{
 ...
}
а в другой модели (форме) обычным способом вызвала

Код: Выделить всё

 FuncsClass::t2s($this->start_time);
даже не писала вот этого

Код: Выделить всё

use app\models\FuncsClass;
urichalex
Сообщения: 994
Зарегистрирован: 2015.08.07, 11:03

Re: Как создать свой клас в Yii?

Сообщение urichalex »

olgatcpip писал(а): 2017.06.30, 09:03 Здравствуйте.

А я создала свой класс в папке моделей. Главное указать namespace

Код: Выделить всё


namespace app\models;

class FuncsClass
{
 ...
}
а в другой модели (форме) обычным способом вызвала

Код: Выделить всё

 FuncsClass::t2s($this->start_time);
даже не писала вот этого

Код: Выделить всё

use app\models\FuncsClass;
1. Тема про Yii1
2. По тому, что обе модели в одном пространстве имен
Ответить