Перейти к содержанию

Состояние объекта

Объект может принимать 3 состояния:

  • новый, данные которого еще ни разу не сохранялись в БД;
  • актуальный, данные которого совпадают с хранящимися в БД;
  • измененный, данные которого отличаются от хранящихся в БД.

Проверить состояние объекта можно с помощью публичного read-only свойства state и констант класса \Bitrix\Main\ORM\Objectify\State:

use \Bitrix\Main\Test\Typography\Book;
use \Bitrix\Main\ORM\Objectify\State;

$book = new Book;
$book->setTitle('New title');

var_dump($book->state === State::RAW);

$book->save();

var_dump($book->state === State::ACTUAL);

$book->setTitle('Another one title');

var_dump($book->state === State::CHANGED);

$book->delete();

var_dump($book->state === State::RAW);

// true