TP 实例化模型
TP 实例化模型
例:new UserModel();
$userModel = new UserModel('库名.表名');
如果传了'库名.表名' 或 '表名',则设置$this->name = 表名; 否则$this->name =xxxModel 的前半部分
$this->db()方法来连接数据库
$this->db()方法中-->_checkTableInfo()--->$db->getFields()方法
$db->getFields()方法中使用了一个‘show columns from 表名’(或者 desc 表名)
$this->construct()--->$this->db()--->$this->_checkTableInfo()--->$this->flush--->$db->getFields()
注意:什么时间获取列名?(和配置文件加载顺序有关,app 的conf/debug.php 加载顺序优于Thinkphp 的conf/debug.php)
1、如果$this->fields属性为空,则自动获取
2、同时,如果DB_FIELDS_CACHE选项为false,则每次刷新都会分析列名
3、如果开启DB_FIELDS_CACHE选项为true,则意味着分析的结果会被缓存,下次直接读缓存里的列信息