thinkphp3.2和thinkphp5数据库操作进行对比

增加数据
thinkhp3.2

  1. //添加单条数据
  2. $User = M('User');
  3. $data['name'] = 'ThinkPHP';
  4. $data['email'] = '[email protected]';
  5. $User->create($data);
  6. $User->add($data);
  7.  
  8. //添加多条数据
  9. $dataList[] = array('name'=>'thinkphp','email'=>'[email protected]');
  10. $dataList[] = array('name'=>'onethink','email'=>'[email protected]')
  11. $User->addAll($dataList);

 

 

thinkphp5

  1. //添加单条数据
  2. $data = ['foo' => 'bar', 'bar' => 'foo'];
  3. Db::table('think_user')->insert($data);
  4.  
  5. //添加多条数据
  6. $data = [
  7.     ['foo' => 'bar', 'bar' => 'foo'],
  8.     ['foo' => 'bar1', 'bar' => 'foo1'],
  9.     ['foo' => 'bar2', 'bar' => 'foo2']
  10. ];
  11. Db::name('user')->insertAll($data);

 

 

修改数据
thinkhp3.2

  1. $User = M("User"); // 实例化User对象// 要修改的数据对象属性赋值$data['name'] = 'ThinkPHP';
  2. $data['email'] = '[email protected]';
  3. $User->where('id=5')->save($data); // 根据条件更新记录
  4.  
  5. where('id=5')->setField('name','ThinkPHP');
  6.  
  7. $data = array('name'=>'ThinkPHP','email'=>'[email protected]');// 更改用户的name值
  8.  
  9. $User-> where('id=5')->setField($data);更改用户的name和email的值
  10.  
  11. $User->where('id=5')->setDec('score',5); // 用户的积分减5
  12. $User->where('id=5')->setInc('score',3); // 用户的积分加3

 

 

thinkphp5

  1. Db::table('think_user')->update(['name' => 'thinkphp','id'=>1]);//更新数据表中的数据
  2.  
  3. Db::table('think_user') ->where('id',1) ->setField('name', 'thinkphp');//更新某个字段的值
  4.  
  5. Db::table('think_user')->where('id', 1)->setInc('score',5);// score 字段加 5
  6. Db::table('think_user')->where('id', 1)->setDec('score', 5);// score 字段减 5
  7.  
  8. Db::table('think_user')->where('id', 1)->setInc('score', 1, 10);//支持延时更新

 

删除数据
thinkhp3.2

  1. $User->delete('1,2,5'); // 删除主键为1,2和5的用户数据
  2. $User->where('status=0')->delete(); // 删除所有状态为0的用户数据

复制代码

 

thinkphp5

  1. // 根据主键删除
  2. Db::table('think_user')->delete(1);
  3. Db::table('think_user')->delete([1,2,3]);
  4.  
  5. // 条件删除    
  6. Db::table('think_user')->where('id',1)->delete();
  7. Db::table('think_user')->where('id','<',10)->delete();

你可能感兴趣的:(php)