15年软件开发经验 只做源码定制 互联网+定制化解决方案

15年软件开发经验,只做源码定制!

原创设计 定制开发

满足您的个性化需求

当前位置:首页 后端开发 Thinkphp5

tp5调用模型的方式

王少铮| 发布于 2021-08-18 12:02:14| 90阅读| 0点赞| 0评论
举报

调用模型的两种方式

假设有一个叫user的表,那么创建一个名为User的模型,内容如下

<?php
namespace <a href="https://www.qinfenniao.com/nav/%E7%BD%91%E7%AB%99%E5%BC%80%E5%8F%91.html" target="_blank">app</a>/admin/model

use think\Model

class User extends Model{    public function aa($id){      }
}

在控制器需要调用此模型的话,在顶部use引入该模型

use <a href="https://www.qinfenniao.com/nav/%E7%BD%91%E7%AB%99%E5%BC%80%E5%8F%91.html" target="_blank">app</a>/admin/model/User

如果控制器也叫User,那么名称会冲突报错,此时只需要加个别名就好

use <a href="https://www.qinfenniao.com/nav/%E7%BD%91%E7%AB%99%E5%BC%80%E5%8F%91.html" target="_blank">app</a>/admin/model/User as UserModel

然后在方法里调用有两种方式

public function index
{
    //1.实例化调用
    $model = new UserModel()    $id = 1  //可以使用一些对象方法,例如<br/>  $model->where('id',$id)->find();<br/>    //使用模型内方法    $model->aa($id);<br/>    //2.静态调用    UserModel::create();    UserModel::update();}

静态调用只能使用静态方法,调用动态方法会报错

动态方法可以使用全部方法

模型中有独特的操作数据库的方法

例如

//比如数据库中有username和password字段public function add(){  $data = [    'username' => 'aaa',<br/>    'password' => 'bbb',<br/>    'conpass' => 'ccc',<br/>  ];  //此时使用Db直接插入会报错  Db::name('user')->insert($data);  //可以使用模型插入  $model = new User();  $model->allowField(true)->save($data);  //allowField的值为true的话,只插入数据库已有的字段}
0

0条评论

别默默看啦~登录/注册一起参与讨论吧~

热门标签

王少铮
微信扫一扫立即咨询
账号登录|扫码登录

立即注册 |忘记密码?

欢迎注册

已有账号马上登录

重置密码

扫码绑定微信
微信扫一扫

绑定手机号

分享到-微信

举报

  • 举报类型:

  • 举报描述:

您好,当前积分不足。

在线客服
拨打电话
17330196230 13230981129
顶部