ThinkPHP5.0 模型调用

一、模型类可以使用静态调用或者实例化调用两种方式,例如:

// 静态调用
$user = User::get(1);
$user->name = 'thinkphp';
$user->save();

// 实例化模型
$user = new User;
$user->name= 'thinkphp';
$user->save();

// 使用 Loader 类实例化(单例)
$user = Loader::model('User');

// 或者使用助手函数`model`
$user = model('User');
$user->name= 'thinkphp';
$user->save();

二、模型初始化

1、模型同样支持初始化,与控制器的初始化不同的是,模型的初始化是重写Modelinitialize,具体如下

namespace appindexmodel;

use thinkModel;

class Index extends Model
{

    //自定义初始化
    protected function initialize()
    {
        //需要调用`Model`的`initialize`方法
        parent::initialize();
        //TODO:自定义的初始化
    }
}

2、同样也可以使用静态init方法,需要注意的是init只在第一次实例化的时候执行,并且方法内需要注意静态调用的规范,具体如下

namespace appindexmodel;

use thinkModel;

class Index extends Model
{

    //自定义初始化
    protected static function init()
    {
        //TODO:自定义的初始化
    }
}
原文地址:https://www.cnblogs.com/520fyl/p/7126580.html