跨控制器调用方法
function DiaoYong(){ 造对象$sc = new \Home\Controller\GoodsController();echo $sc->aa(); 如果在同一个文件夹下,相对路径$sc=new GoodsController();echo $sc->aa(); 快捷方法A创建控制器对象;一般特指控制器$sc=A("Goods");echo $sc->aa(); 同一个Home模块下,跨模块,加上一个模块名$sc=A("Goods\aa");echo $sc->aa(); R方法,自动调用某个控制器里面的某一个方法;不仅早出对象,还能调用里面方法echo R("Goods/aa");}
造model模型对象--操作数据库的方法
function DB(){1.原始方法$m=new \Home\Model\InfoModel();var_dump($m); 2.使用快捷方法D,必须指定操作哪一张表,算是new的简化版$m=D(Info);var_dump($m); 3.快捷方法M(),可以访问数据库$m = M("nation");var_dump($m);}
操作数据库的指令
function DB() {
指定操作哪一张表
$m=D(info);
查询数据表中的所有内容$attr=$m->select();
只能写主键值,根据主键值找一条数据,返回一维数组$attr= $m ->find("p001"); 返回二维数组,$attr=$m->select("p001,p003"); where给查询添加条件$attr=$m->where("code=‘p001‘ or sex=true")->select();var_dump($attr); table 切换操作的表$m=D(info);$attr=$m->table("nation")->select();var_dump($attr); alias 给当前差的表定义一个别的名称,用处不大$m=D(info);$attr=$m->alias("nation")->select();var_dump($attr); field单独查询列$m=D(info);$attr=$m->field("nation")->select();var_dump($attr); order 排序$m=D(info);$attr=$m->order("nation desc")->select();var_dump($attr); group 分组$m=D(info);$attr=$m->field("nation")->group("nation")->select();var_dump($attr); having 可以加分组后的条件$m=D(info);$attr=$m->field("nation")->group("nation")->having("count(*)>0")->select(); join 链接两张表,在field里面要给字段加别名$m=D(info);$attr=$m->field("info.code as 代号,info.name as 姓名,sex as 性别,nation.name as 名族名称")->join("nation on info.nation=nation.code")->select();
//查询两张表中的name列拼接到一起,联合查询$m=D(info);$attr=$m->field("name")->union("select name from nation")->select();var_dump($attr); //去重,参数是一个bool型$m=D(info);$attr=$m->field("nation")->distinct(true)->select();var_dump($attr); //limit,参数(跳过几条,取几条)//page(当前第几页,每一页显示几条),直接去当前页数$m=D(nation);$attr=$m->limit(2,3)->select();$attr1=$m->page(2,3)->select();var_dump($attr1); //取数据总条数$m=D(car);$attr=$m->count("*");//取某一列的和$attr1=$m->sum("price");//平均值$attr2=$m->avg("price");//最大最小值$attr3=$m->min("price");$attr4=$m->max("price");var_dump($attr4);
}
时间: 2024-11-21 05:03:10