abstract class Base

Базовый класс для объектов системы

Properties

static $plugins Плагины
int $id идентификатор объекта

Methods

__toString()

No description

array
asArray()

Возвращает объект в виде массива с указанными полями

mixed
__get(string $name)

Перегрузка чтения свойств класса.

void
__set(string $name, mixed $value)

Перегрузка записи свойств класса.

static void
addPlugin(ObjectPlugin $class)

Расширяет функциональность класса с помощью методов другого класса.

__call($name, $arguments)

No description

decodeLocaleString($str)

No description

Details

at line 63
__toString()

at line 73
array asArray()

Возвращает объект в виде массива с указанными полями

Return Value

array

at line 108
mixed __get(string $name)

Перегрузка чтения свойств класса.

Если в классе существует метод getСвойство(), то вызывается этот метод Если в классе существует поле $_свойство, то возвращается это поле В противном случает бросается исключение

Parameters

string $name свойство класса

Return Value

mixed

Exceptions

LogicException

at line 132
void __set(string $name, mixed $value)

Перегрузка записи свойств класса.

Если в классе существует метод setСвойство(), то вызывается этот метод Если в классе существует поле $свойство, то полю присваивается значение свойства В противном случает бросается исключение

Parameters

string $name свойство класса
mixed $value значение свойства

Return Value

void

Exceptions

LogicException

at line 180
static void addPlugin(ObjectPlugin $class)

Расширяет функциональность класса с помощью методов другого класса.

Например, необходимо добавить в клас \Cetera\User метод, возвращающий кол-во дней, которые прошли с момента регистрации пользователя. Создадим класс-плагин:

class MyUser extends \Cetera\ObjectPlugin {
    public function getRegisteredDays() {
        // экземпляр класса, к каторому будет добавлен плагин находится в свойстве object
        $date_reg = new DateTime($this->object->date_reg);
        $date_now = new DateTime('now');
        $diff = $date_now->getTimestamp() - $date_reg->getTimestamp();
        return ceil($diff / (60*60*24));
    }
}

Добавим плагин к классу \Cetera\User:

\Cetera\User::addPlugin( 'MyUser' );

Теперь можем использовать метод \Cetera\User::getRegisteredDays():

$user = \Cetera\Application::getInstance()->getUser();
echo 'Я с вами '.$user->getRegisteredDays().' дней!';

Parameters

ObjectPlugin $class класс, методы которого добавить к данному

Return Value

void

at line 192
__call($name, $arguments)

Parameters

$name
$arguments

at line 216
decodeLocaleString($str)

Parameters

$str