模型初始化 initialize( )
1. 作用:创建模型对象之前做的预处理工作。在ThinkPHP5中,创建数据模型是一个非常容易的过程,整个过程是透明的。
2. 实例演示:创建模型对象前,初始化部分模型类属性模型对象创建时,除了模型名$name和所继承的类$class(命名空间表示)之外,其它所有的模型属性都是空的或只有默认值。随着以后的操作,这些属性会根据操作要求自动完成初始化。第一步:在上节课创建的模型类Staff.php里,添加初始化方法本教程如无特别说明:源码均指:Model.php 类文件中的内容。
文件位置:/thinkphp/library/think/Model.php<?phpnamespace app\index\model;//导入模型类use think\model;class Staff extends model {//在子类重写父类的初始化方法initialize()protected function initialize(){ //继承父类中的initialize()parent::initialize(); //初始化数据表名称,通常自动获取不需设置
$this->table = ‘tp5_staff’;
//初始化数据表字段信息
$this->field = $this->db()->getTableInfo(”, ‘fields’);
//初始化数据表字段类型
$this->type = $this->db()->getTableInfo(”, ‘type’);
//初始化数据表主键
$this->pk = $