* [ ] Model 文件的作用 * 集中管理各表的操作,控制层调用 Model 方法,控制层返回结果 * 避免在控制器里面直接写操作表,加入数据表名因为某种原因,名字变了,那么改动的地方特别多 * 当然根据个人喜好,选择不同的操作方式 * [ ] 场景 * 假设操作 user 数据库的 user_account 表 * 假设项目里面存在操作多个数据库,那么操作每个表的 Model 文件存储路径为: * /home/wwwroot/project/appliction/lib/model/User/AccountModel.php * 命名规则:/home/wwwroot/project/appliction/lib/model/[数据库名(和数据库中间类名一致)]/[不带表前缀的名称,首字母大写]Model.php * 实例代码: ~~~ <?php namespace model\User; use model\Common\CurdTrait; use model\Common\PublicModel; /** * 用户管理 * Class AccountModel * @package model\User */ class AccountModel extends PublicModel { use CurdTrait; // 操作的数据库 protected static $dbObj = 'User'; // 操作的表名,不带表前缀 protected static $tabName = 'account'; // [如果没有,设置为空字符] 该表的主键 protected static $tabId = 'uid'; // 简单的Demo public static function getUserInfo( $uids = [] ) { if ( empty($uids) ) { return []; } $where = array( 'uid[in]' => $uids, ); $user_infos = self::select($where); return $user_infos; } } ~~~