php

ThinkPHP框架基础之模型层篇

2023-10-09


function model()

{

        //Model:数据库中每张表对应一个模型

        //类名就是表名,类里面的成员变量是表里面的列名

        //一张表对应一个类,其中一条数据对应一个对象

        //如果我们对表没有特殊的需求,就可以不用在Model文件中建立相应的文件(不用建立模型)

    //实例化Model的三种方式:

      //1.实例化Model类

      $m = new \Home\Model\InfoModel();

      //var_dump($m);

      //2.M方法

      $m = M("Info");

       //3.D方法

      $m = D("Info");

      //var_dump($m);

}


首先要在Model文件夹下建立一个模型(与控制器类似)

<?php

namespace Home\Model;

use Think\Model;

class InfoModel extends Model

{  

}


数据查询:

var_dump($m->select())   //查所有

var_dump($m->table("Nation")->select());  //table方法可以切换操作表

var_dump($m->field("Code,Name")->select());  //查询指定列

var_dump($m->order("Code desc")->select());  //排序

var_dump($m->limit(2)->select());   //取前两个

var_dump($m->limit(2,1)->select());  //跳过2个,取1个

var_dump($m->page(n,m)->select());  //取第n页,显示m个数据

var_dump($m->field("Nation,count(*)")->group("Nation")->select());  //分组查询

var_dump($m->join("Nation on Info.Nation = Nation.Code")->select()); //连接查询

var_dump($m->distinct(true)->field("Nation")->select());  //去重查询

     

var_dump($m->find("p001"));//查一条数据,只能根据主键值查询,返回一维数组;括号内不写主键值,默认返回第一条数据

var_dump($m->select("p001,p002"));//根据主键值查询,返回二维数组,可以多个主键值一起查


数据添加:

$m->add();

 

数据删除:

$m->delete();

 

数据修改:

$m->save();