开发文档 v2.x

其它方法

更新时间:2024年11月29日 21:26 浏览:725

 

isLoaded - 是否已从数据库加载数据

public function isLoaded(): bool

参数:

返回值:

  • bool - 是否已从数据库加载数据

 

代码示例:

$tuple = Be::getTuple('user');

// $tuple->isLoaded();
// false

try {
  $tuple->load('f69e75bf-9e18-11ec-a3cb-0242ac180065');
} catch (\Throwable $t) {
  throw new ServiceException('用户不存在!');
}

// $tuple->isLoaded();
// true

 

hasChange - 是否有改动

public function hasChange(): bool

参数:

返回值:

  • bool - 是否有改动

 

代码示例:

$tuple = Be::getTuple('user');
try {
  $tuple->load('f69e75bf-9e18-11ec-a3cb-0242ac180065');
} catch (\Throwable $t) {
  throw new ServiceException('用户不存在!');
}

// $tuple->hasChange();
// false

$tuple->age = 51;

// $tuple->hasChange();
// true

 

getChanges - 获取改动项

public function getChanges(): array

参数:

返回值:

  • array - 改动项键值对

 

代码示例:

$tuple = Be::getTuple('user');
try {
  $tuple->load('f69e75bf-9e18-11ec-a3cb-0242ac180065');
} catch (\Throwable $t) {
  throw new ServiceException('用户不存在!');
}

$arr = [
  'name' =>'马云123',
  'age' => 51,
];
$tuple->bind($arr);

$tuple->update_time = '2022-08-25 12:00:00'

$changes = $tuple->getChanges();
/*
[
  'name' =>'马云123',
  'age' => 51,
  'update_time' =>'2022-08-25 12:00:00',
]
*/

 

getChangeDetails - 获取改动项明细

public function getChangeDetails(): array

参数:

返回值:

  • array - 改动项明细

 

明细将包含改动前后的数据

 

代码示例:

$tuple = Be::getTuple('user');
try {
  $tuple->load('f69e75bf-9e18-11ec-a3cb-0242ac180065');
} catch (\Throwable $t) {
  throw new ServiceException('用户不存在!');
}

$arr = [
  'name' =>'马云123',
  'age' => 51,
];
$tuple->bind($arr);

$tuple->update_time = '2022-08-25 12:00:00'

$changes = $tuple->getChanges();
/*
[
  'name' => [
    'from' => '马云',
    ‘to’ => '马云123',
  ]
  'age' => [
    'from' => 50,
    'to' => 51
  ],
  'update_time' => [
    'from' => '2022-08-01 12:00:00',
    'to' => '2022-08-25 12:00:00'
  ]
]
*/

 

toArray - 将行模型数据转成简单数组

public function toArray(): array

参数:

返回值:

  • array
$tuple = Be::getTuple('user');
try {
  $tuple->load('f69e75bf-9e18-11ec-a3cb-0242ac180065');
} catch (\Throwable $t) {
  throw new ServiceException('用户不存在!');
}

$arr = $tuple->toArray();

// $arr['name'];

 

toObject - 将行模型数据转成简单对象

 public function toObject(): object

参数:

返回值:

  • object
$tuple = Be::getTuple('user');
try {
  $tuple->load('f69e75bf-9e18-11ec-a3cb-0242ac180065');
} catch (\Throwable $t) {
  throw new ServiceException('用户不存在!');
}

$obj = $tuple->toObject();

// $obj->name;

 

getDbName - 获取数据库名

public function getDbName(): string

参数:

返回值:

  • string - 数据库名

 

getTableName - 获取表名

public function getTableName(): string

参数:

返回值:

  • string - 表名

 

getPrimaryKey - 获取主键名

public function getPrimaryKey()

参数:

返回值:

  • array | string | null - 主键

 

init - 初始化

public function init(): Table

参数:

返回值:

  • Table - 表模型本身

 

初始化用于还原行模型中设置的查询条件等。

导航