ThikPHP中add方法

  普通的常用的add添加方法

  1. $User = M("User"); // 实例化User对象
  2. $data['name'] = 'ThinkPHP';
  3. $data['email'] = 'ThinkPHP@gmail.com';
  4. $User->add($data);

  add的三个参数

  add($data='',$options=array(),$replace=false)

  前两个参数不解释  最重要的是第三个 参数   可以简单的理解为 如果数据库内这条数据存在将会做更新 如果不存在那就做添加 它的意思是添加数据时允许覆盖

  data连贯操作

  1. $User = M("User"); // 实例化User对象
  2. $User->data($data)->add();

  使用create方法

  1. $User = M("User"); // 实例化User对象
  2. // 根据表单提交的POST数据创建数据对象
  3. if($User->create()){
  4. $result = $User->add(); // 写入数据到数据库
  5. if($result){
  6. // 如果主键是自动增长型 成功后返回值就是最新插入的值
  7. $insertId = $result;

  3.2.3版本开始,可以支持不执行SQL而只是返回SQL语句

  • $User = M("User"); // 实例化User对象
  • $data['name'] = 'ThinkPHP';
  • $data['email'] = 'ThinkPHP@gmail.com';
  • $sql = $User->fetchSql(true)->add($data);
  • echo $sql;  

  field方法,表示只允许写入指定的字段数据

  

  1. $data['name'] = 'thinkphp';
  2. $data['email'] = 'thinkphp@gmail.com';
  3. $data['test'] = 'test';
  4. $User = M('User');
  5. $User->field('name')->data($data)->add();

  filter方法可以对数据的值进行过滤

  

  1. $data['name'] = '<b>thinkphp</b>';
  2. $data['email'] = 'thinkphp@gmail.com';
  3. $User = M('User');
  4. $User->data($data)->filter('strip_tags')->add();
  5. 写入数据库的时候会把name字段的值转化为thinkphp(过滤了标签

  支持数据的批量写入

  

  1. // 批量添加数据
  2. $dataList[] = array('name'=>'thinkphp','email'=>'thinkphp@gamil.com');
  3. $dataList[] = array('name'=>'onethink','email'=>'onethink@gamil.com');
  4. $User->addAll($dataList);  
  5. 该功能需要3.2.3以上版本,3.2.3以下版本仅对mysql数据库支持
原文地址:https://www.cnblogs.com/Zhi-Jie/p/6826070.html