我经常看到在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();这两种类型的访问(如果有的话)之间的主要区别是什么,以及每种访问何时使用?
发布于 2018-09-12 08:10:44
/application/libraries/Engine/Engine文件夹是zend顶部的SocialEngine CMS,在这里您可以找到所有函数定义
/application/modules/moduleName/settings/manifest.php在这里添加项目,在模块中
加载应用程序时,将扫描所有清单文件,并加载项目。getItemTable只能在定义项时加载DbTable类。
其中as getDbTable()可用于不用作项的表。
https://stackoverflow.com/questions/52053191
复制相似问题