2023年6月21日发(作者:)
thinkphp创建对象及数据操作ThinkPHP有三种创建控制器对象的⽅式:1. 通过命名空间的路径找到类然后new出来例如:$dx = new HomeControllerIndexController();2. 通过A快捷函数创建对象A("模块/控制器")例如: $dx = A("HomeIndex");3. 通过R快捷函数创建对象并调⽤⽅法;R("Index/ShuChu")ThinkPHP操作数据库:⾸先需要在配置⽂件中配置数据库信息在创建模型对象执⾏sql语句创建模型对象有三种⽅式:1. 原始⽅式需要模型中建模型类,类名必须是数据库表名,例如:$m = new HomeModelInfoModel();2. 使⽤快捷函数D:$m = D("Info");需要注意的是如果没有模型类可以不加参数,对象就是model⽗类的对象 3、使⽤快捷函数M:$m = M("Nation");操作数据库:⾸先介绍⼀下连贯函数,就是返回值是:$this,也就是说返回⾃⾝对象,可以继续调⽤函数数据库操作中基本的函数:select("主键值【,主键值】")、find("主键值"),聚合函数不是连贯函数。具体⽤法如下如下:(可以参考⼿册)操作数据库$attr = $m->select(); //查询所有数据$attr = $m->select("p001,p002,p003");$attr = $m->find("p001"); //找特定的数据根据主键值找where可以加查询条件$attr = $m->where("code='p001' or sex=true")->select();table可以切换要操作的表$attr = $m->table("Nation")->select();alias可以设置表的别名$attr = $m->alias("⼈员")->select();field可以指定查询的字段$attr = $m->field("code,name")->select();order可以加排序条件$attr = $m->order("Nation desc")->select();group可以分组$attr = $m->field("Nation")->group("Nation")->select();having可以加分组后的条件$attr = $m->field("Nation")->group("Nation")->having("count(*)>5")->select();join可以连接多个表,在field⾥⾯要给字段加别名$attr = $m->field(" as 代号, as 姓名,Sex as 性别, as 民族名称")->join("Nation on =")->select();union联合查询$attr = $m->field("name")->union("select name from nation")->select();distinct去重$attr = $m->field("Nation")->distinct(true)->select();limit可以分页,参数第⼀个代表跳过多少条,第⼆个代表取多少条$attr = $m->limit(10,5)->select();page可以分页。第⼀个参数代表是当前页,第⼆个参数代表每页多少条$attr = $m->page(3,5)->select();取数据总条数$attr = $m->count("*");取某⼀列的和$attr = $m->table("Car")->sum("Price");取平均值$attr = $m->table("Car")->avg("Price");取最⼤值$attr = $m->table("Car")->max("Price");取最⼩值$attr = $m->table("Car")->min("Price");$sql = "select * from Info where Nation='n001'";$attr = $m->query($sql);$sql = "insert into Nation values('n104','按实际')";$attr = $m->execute($sql);$attr = $m->field(" as code, as name,sex, as nationname,birthday")->join("Nation = ")->select();$this->assign("info",$attr);$this->assign("test",10);$this->display(); ThinkPHP内置标签
代号 | 姓名 | 性别 | 民族 | ⽣⽇ |
<{$}> | <{$}> | <{$v["sex"]?"男":"⼥"}> | //三⽬运算符不⽀持点操作<{$name}> | <{$ay}> |
hello 10
2023年6月21日发(作者:)
thinkphp创建对象及数据操作ThinkPHP有三种创建控制器对象的⽅式:1. 通过命名空间的路径找到类然后new出来例如:$dx = new HomeControllerIndexController();2. 通过A快捷函数创建对象A("模块/控制器")例如: $dx = A("HomeIndex");3. 通过R快捷函数创建对象并调⽤⽅法;R("Index/ShuChu")ThinkPHP操作数据库:⾸先需要在配置⽂件中配置数据库信息在创建模型对象执⾏sql语句创建模型对象有三种⽅式:1. 原始⽅式需要模型中建模型类,类名必须是数据库表名,例如:$m = new HomeModelInfoModel();2. 使⽤快捷函数D:$m = D("Info");需要注意的是如果没有模型类可以不加参数,对象就是model⽗类的对象 3、使⽤快捷函数M:$m = M("Nation");操作数据库:⾸先介绍⼀下连贯函数,就是返回值是:$this,也就是说返回⾃⾝对象,可以继续调⽤函数数据库操作中基本的函数:select("主键值【,主键值】")、find("主键值"),聚合函数不是连贯函数。具体⽤法如下如下:(可以参考⼿册)操作数据库$attr = $m->select(); //查询所有数据$attr = $m->select("p001,p002,p003");$attr = $m->find("p001"); //找特定的数据根据主键值找where可以加查询条件$attr = $m->where("code='p001' or sex=true")->select();table可以切换要操作的表$attr = $m->table("Nation")->select();alias可以设置表的别名$attr = $m->alias("⼈员")->select();field可以指定查询的字段$attr = $m->field("code,name")->select();order可以加排序条件$attr = $m->order("Nation desc")->select();group可以分组$attr = $m->field("Nation")->group("Nation")->select();having可以加分组后的条件$attr = $m->field("Nation")->group("Nation")->having("count(*)>5")->select();join可以连接多个表,在field⾥⾯要给字段加别名$attr = $m->field(" as 代号, as 姓名,Sex as 性别, as 民族名称")->join("Nation on =")->select();union联合查询$attr = $m->field("name")->union("select name from nation")->select();distinct去重$attr = $m->field("Nation")->distinct(true)->select();limit可以分页,参数第⼀个代表跳过多少条,第⼆个代表取多少条$attr = $m->limit(10,5)->select();page可以分页。第⼀个参数代表是当前页,第⼆个参数代表每页多少条$attr = $m->page(3,5)->select();取数据总条数$attr = $m->count("*");取某⼀列的和$attr = $m->table("Car")->sum("Price");取平均值$attr = $m->table("Car")->avg("Price");取最⼤值$attr = $m->table("Car")->max("Price");取最⼩值$attr = $m->table("Car")->min("Price");$sql = "select * from Info where Nation='n001'";$attr = $m->query($sql);$sql = "insert into Nation values('n104','按实际')";$attr = $m->execute($sql);$attr = $m->field(" as code, as name,sex, as nationname,birthday")->join("Nation = ")->select();$this->assign("info",$attr);$this->assign("test",10);$this->display(); ThinkPHP内置标签
代号 | 姓名 | 性别 | 民族 | ⽣⽇ |
<{$}> | <{$}> | <{$v["sex"]?"男":"⼥"}> | //三⽬运算符不⽀持点操作<{$name}> | <{$ay}> |
hello 10
发布评论