Я часто видел, как таблицы извлекаются в SocialEngine с использованием Engine_Api::_()->getDbTable()
.
Например:
$usersTbl = Engine_Api::_()->getDbTable('users','user');
$row = $usersTbl->createRow();
$row->user_id = $user->getIdentity();
$row->phone_number = $phoneNumber;
$row->save();
Однако я также вижу, что SocialEngine использовал Engine_Api::_()->getItemTable
во многих местах. Например:
$table = Engine_Api::_()->getItemTable($type);
$row = $table->createRow();
foreach($params as $key=>$value) {
if(isset($row->$key)) {
$row->key = $value;
}
}
$row->save();
В чем основное различие между этими двумя типами доступа, если таковые имеются, и когда каждый из них используется?