上一篇文章讲解“模型-删除”,本篇文章讲解“模型-查询一”。
查询:根据条件获取数据库中的数据。
一、获取单个数据
查询使用模型,在控制器中调用模型中方法进行学习,以便更熟练的使用模型。
1. get
1)查询条件为主键
新建模型User.php,并在其中查询一条数据
新建Index.php控制,并在控制器中调用User模型中的getOne方法
浏览器访问
注意:
1. 控制器中使用构造方法时,如果控制器继承了父类,那么在构造方法中要将父类的构造方法继承,否则会出错。
2. 模型在构造方法中实例化是为了控制器中方法使用的方便,无需每个方法都实例化一遍模型。
2)查询条件为数组
修改User模型中getOne方法,以数组为条件进行查询。
浏览器访问:
3)查询条件为闭包
修改User模型中getOne方法,以闭包为条件进行查询。
浏览器访问:
2. find
修改User模型中getOne方法,以find方法进行查询。
浏览器访问:
注意:
1. 如果你是在模型内部,请不要使用$this->name的方式来获取数据,请使用$this->getAttr('name')替代。
二、获取多条数据
根据条件获取多条数据。
1. all
1)查询条件为主键
User模型中定义方法getAll,并在getAll中根据主键查询多条数据
Index控制器中新建方法all,并在其中调用User模型的getAll方法
浏览器访问
2)查询条件为数组
修改User模型中getAll方法,以数组为查询条件进行查询。
浏览器访问:
注意:
1. 当查询数组为[1, 2, 3]时,则为查询主键等于1,2,3的数据。
3)查询条件为闭包
修改User模型中getAll方法,以闭包为查询条件进行查询。
浏览器访问:
注意:
1. 数组方式和闭包方式的数据查询的区别在于,数组方式只能定义查询条件,闭包方式可以支持更多的连贯操作,包括排序、数量限制等。
2. select
修改User模型中getAll方法,以select方式进行查询。
浏览器访问:
ThinkPHP5连载为卓象程序员原创,转载请联系卓象程序员
关注卓象程序员,定期发布技术文章
下一篇讲解“模型-查询二”
领取专属 10元无门槛券
私享最新 技术干货