-
多表查询之table方法 //不推荐使用table,一般查看视图不用表格 1 语法 多表联合查询 table(array('前缀_表名1'=>'别名1','前缀_表名2'=>'别名2',……)) 表名需要加前缀 2 例子 $data=M()->table(array('nk_user'=>'user','mk_userinfo'=>'info')) ->where('user.id=info.user_id')->select(); //因为 table() 中已经将所有的表都做了别名处理,所有此处的 M() 函数是不需要穿参数的查看全部
-
limit(start,length)start:起始位置(从0开始计数) length:长度 limit(2,5) //从第2条开始数,取5条数据 page:(页码[从1开始计数],每页的条数(默认为20)) //不建议使用,php官方有功能更强大更好用的类似函数 page(2,5) //第二页,显示5条查看全部
-
<?php /* 1.加载ThinkPHP.php require('./ThinkPHP/ThinkPHP.php'); 2.加载核心文件 ./ThinkPHP/Lib/core 3.加载项目的核心文件 分析url 调用相关控制器 http://localhost/index.php?m=index&a=index m 模块 控制器 a action 方法 action=页面 */ /* exit; 退出*/ //三目运算符 如果m存在的话 就调用m 如果不存在就调用Index $module=isset($_GET['m'])?$_GET['m']:'Index'; $action=isset($_GET['a'])?$_GET['a']:'Index'; $mooc=new $module(); $mooc->$action(); class index{ function __construct(){//这里他妈是两个横杠,页面输出来是乱码的请在浏览器中设置页面属性改成utf-8 echo '调用了index控制器<br/>'; } function index(){ echo '我是index控制器中的index方法'; } } exit; define('APP_NAME','App'); define('APP_PATH','./App/'); require('./ThinkPHP/ThinkPHP.php'); ?>查看全部
-
1.语法 field($string,false)【默认状态false】 false 时,查询 $string 中规定的字段 ture 时,过滤 $string 中规定的字段(即取 $string 规定字段 以外的其他字段) 查询多个字段时,$string 中的各字段名 用逗号隔开 2.TP中提供了连续操作方式,如下: //所有的条件方法都是要在 select()方法前使用,条件方法对查询才会起作用. // 只查询user_name,并按id进行降序排序; $data=M('user')->field('user_name',false)->order('id',desc)->select();查看全部
-
//order排序(多个条件用逗号隔开) order(‘字段1 排列方式,字段2 排列方式') $data=M('user')->order('score desc,id asc')->select(); //desc降序排列,asc升序排列查看全部
-
1.按条件删除 $where['id']=3; //条件删除 M('User')->where($where)->delete(); 2.主键值删除 M('User')->delete(3); //delete(主键值);只可以传入主键值,删除主键值对应的那条数据查看全部
-
$updata['score']=60; //要修改的数据 $where['id']=1; //查找条件(此处的设置可参考上一节课的) M('User')->where($where)->save($updata); //使用 框架基础模型的save() 函数进行更新查看全部
-
(下) //4.区间查询 where['id']=array(array('gt',100),array('lt',3),'or');//查询>100 或者<3的数据 //5.混合查询 $where['id']=array('gt' 10);//查询id>10的数据 $where['_string']='scoer>10';// 查询scoer>10的数据 $data=M('User')->where( $where )->select(); //6.统计用法 // count统计数量 可选 // max 获取最大值 必须传入 统计的字段名 // min 获取最小值 必须传入 统计的字段名 // avg 平均值 必须传入 统计的字段名 // sum 求和 必须传入 统计的字段名 $data =M('user')->min('id');//查询语句(所有记录中 id 值最小的记录) PS:建议不要直接使用 1.直接用字符串进行查询 和 5.混合查询 防止SQL注入 (对所有用户提交的数据都要进行 防SQ注入 操作)查看全部
-
(上) //1.直接用字符串进行查询 $data=M('User')->where('id=1')->select(); //2.使用数组方式进行查询 $wher[‘id’]=2; //查询条件1 $where['user_name']="xiaoming";//查询条件2 $where['_logic']='or'; //查询条件的逻辑关系 $data=M('User')->where($where)->select(); //3. 表达式查询 //eq(=) neq(!=) egt(>=) gt(>) lt(<) elt(<=) like(like) between (between and) not between(not between and) in (in) not in (not in) and(and[默认]) //$where['字段名']=array('表达式',查询条件); $where ['id']=array('lt',3);//查询<3的数据 $where['id']=array('between','1,8');//查询 id值 在1到8的数据 $where['id']=array('lt'3);//查询id<3的数据 $where['user_name']=array('like',array('%ming','xiao%'));//模糊查询user_name字段值等于 %ming 或者 xiao% 的数据查看全部
-
111查看全部
-
图形描述查看全部
-
M('User')->add(一维数组);//添加一条数据,成功的话返回自增ID值 M('User')->addAll(多维数组);//添加多条数据,成功的话返回插入数据第一条自增ID值,只适用于MySql,且实际运用中较少 echo M()->getLastSql();//查看最后一条执行语句查看全部
-
1.实例化框架基础模型(在 ThinkPHP/Library/Think/Model.class.php 中) $user=new Model('admin’); //参数表:表名、表前缀、数据库连接信息 ;省略的参数会直接调用配置文件中配置的相关数据 $user=M("pro"); //M()方法会直接跳过应用中的模型(不论应用的模块的 Model文件夹 中是否有同名模型类文件[proModel.class.php] ),而去实例化框架基础模型 $data==$user->select(); //数据库查询 dump($data); 2.实例化用户自定义模型(在 Application/模块(Home)/Model 中) $user=new adminModel(); //参数表:表名、表前缀、数据库连接信息 ;省略的参数会直接调用配置文件中配置的相关数据 $user=D("admin");//先找用户自定义模型,找不到会自动切换成M()方法去查找框架基础模型 echo $user->getinfo(); //调用自定义模型类中的方法 3.实例化公共模型(建议在 Application/模块(Home)/Model 中建立,且 公共模型 继承 框架基础模型 ,然后[有需要的]其他用户自定义模型 再继承 此公共模型 , 这样 此公共模型中定义的方法 就可以被 继承他的子模板 共用) $user=new CommonModel(); //公共模型 echo $user->strmake("aaa"); //公共模型->方法 $user=D("User"); //继承公共模型的子模型 /echo $user->strmake("abc"); //子模型->公共模型的方法 4.实例化空模型(方便使用原生的SQL语句) $model=M(); //实例化一个空框架基础模型 $sql="select * from imooc_admin"; $data=$model->query($sql); //query()方法最好只用于读取数据 $model->execute($sql); //execute()方法最好只用于写入数据 update,insert,delete等 [execute()方法返回值为数据表被影响行数,所以不能用来做查询]查看全部
-
//TP框架内置了一个抽象的数据库的访问层,这个访问层把不同的数据库操作封装起来,我们只需要使用公共的Db类进行操作,而无需针对不同的数据库写不同的代码和底层实现,Db类会自动调用相应的数据库驱动来处理。使我们可以更专业与逻辑代码的编写 //--数据库参数配置,需要在应有层进行配置( Application/Common/Conf/config.php 中进行配置)—— 'DB_TYPE'=>'muysql',//数据库类型 'DB_HOST'=>'localhost,localhost1,localhost2',//数据库服务器地址 'DB_NAME'=>'mooc',//数据库名 'DB_USER'=>'root',//数据库用户 'DB_PWD'=>'',//数据库用户密码 'DB_PORT'=>'3306',//数据库端口(默认3306),可以不配置 'DB_PREFIX'=>'mc_',//数据库表前缀 //数据库配置好后,并非立即连接,TP数据库连接是一种惰性连接,所以并不是在实例化的时候就连接数据库,而是在有实际的数据操作的时候才会去连接数据库. //开启主从读写分离,读操作使用从服务器,写操作使用主服务器,这样就能给数据库进行负载均衡 'DB_RW_SEPARATE'=>true, //主从分离开启 //说明主服务器数量 'DB_MASTER_NUM'=>'2', //则 'DB_HOST' 前面设置的前两个为主数据库服务器( localhost,localhost1为主服务器 ),剩下的为从服务器( localhost2为从服务器 ) //——如果某模块需要调用其他服务器的数据,则在模块中单独设置服务器配置信息 然后在单独调用—— //具体参看 ThinkPHP3.2 完全开发手册/模型/链接数据库查看全部
-
add 1条数据 add n条数据(数组)查看全部
举报
0/150
提交
取消