在Model文件夹下创建模型,文件命名规则 : 表名Model.class.php
<?php namespace Home\Model; use Think\Model; class yonghuModel extends Model { }
实例化数据库的三种方法
//调用Model文件夹下的模型 public function shujuku1() { $yonghu=new \Home\Model\yonghuModel; //实例化自己创建的Model,(注意路径书写完整) var_dump($yonghu); } //D方法直接实例化 public function shujuku2() { $yonghu=D('yonghu'); //直接利用D方法,需要一个参数,数据库下的表名称 var_dump($yonghu); } //M方法直接实例化(造父类对象) public function shujuku3() { $yonghu=M('yonghu'); //直接利用M方法,需要一个参数,数据库下的表名称 var_dump($yonghu); }
查询数据库
//查询数据库 public function chaxun() { $yonghu=D('yonghu'); var_dump($yonghu->select()); //select查询方法,返回索引为小写的二维数组(只能放在连贯操作的最后面) }
给数据库添加数据的三种方法
//造数组的方式添加 public function add1() { $mode=D("yonghu"); //实例化数据库yonghu表,(将表转化成类) $attr=array //造数组,数组的索引和数据库列名一一对应 ( 'zhanghao'=>001, 'mima'=>123, 'mingzi'=>'刘大', 'xingbie'=>'男', 'shengri'=>'1990-07-09', 'shijian'=>'2016-6-16 14:09:30', 'shengfen'=>'管理', 'zhuangtai'=>'已激活', ); $mode->add($attr); //添加到数据库 } //赋值类成员的方式添加 public function add2() { $mode=D('yonghu'); //实例化数据库yonghu表,(将表转化成类) $mode->zhanghao='002'; //对类成员进行赋值,成员名与数据库列名一一对应 $mode->mima='123'; $mode->mingzi='小二'; $mode->xingbie='男'; $mpde->shengri='1992-09-09'; $mode->shijian='2016-6-16 14:09:31'; $mode->shengfen='用户'; $mode->zhuangtai='未激活'; $mode->add(); //添加到数据库 } //自动收集表单成员数据的方式添加 public function add3() { $mode=D('yonghu'); //实例化数据库yonghu表,(将表转化成类) $mode->create(); //自动收集表单 表单的name和数据库的列名必须一一对应 $z=$mode->add(); //添加到数据库 if($z) { $this->success("添加数据成功!","Add",3); //添加成功时提示 } else { $this->error("添加失败!","Add",5); //添加失败时提示 } }
连接数据库时需要配置的配置文件内容
<?php return array ( //'配置项'=>'配置值' 'TMPL_L_DELIM' => '<{', 'TMPL_R_DELIM' => '}>', 'URL_MODEL'=>2, 'SHOW_PAGE_TRACE' => TRUE, /* 数据库设置 */ 'DB_TYPE' => 'mysql', // 数据库类型 'DB_HOST' => 'localhost', // 服务器地址 'DB_NAME' => 'index', // 数据库名 'DB_USER' => 'root', // 用户名 'DB_PWD' => '', // 密码 'DB_PORT' => '', // 端口 'DB_PREFIX' => '', // 数据库表前缀 'DB_PARAMS' => array(), // 数据库连接参数 'DB_DEBUG' => TRUE, // 数据库调试模式 开启后可以记录SQL日志 'DB_FIELDS_CACHE' => true, // 启用字段缓存 'DB_CHARSET' => 'utf8', // 数据库编码默认采用utf8 'DB_DEPLOY_TYPE' => 0, // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器) 'DB_RW_SEPARATE' => false, // 数据库读写是否分离 主从式有效 'DB_MASTER_NUM' => 1, // 读写分离后 主服务器数量 'DB_SLAVE_NO' => '', // 指定从服务器序号 );
error方法屏蔽系统报错的办法
->将TP\ThinkPHP\Library\Think\Db文件夹下的Driver.class.php文件第237行 “ $this->error(); ” 注释掉