数据库配置文件

ThinkPHP 5

/config/database.php

Laravel 5

/.env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=test
DB_USERNAME=test
DB_PASSWORD=123456

获取单条数据

ThinkPHP 5

Db::table('user')->where('id',$id)->find();

Laravel 5

Db::table('user')->where('id',$id)->first();

获取列表数据

ThinkPHP 5

Db::table('user')->where('deleted_at',null)->select();
// 没条件
Db::table('user')->select();

Laravel 5

Db::table('user')->whereNull('deleted_at')->get();
// 没条件
Db::table('user')->all();

结果集处理

ThinkPHP 5

Db::table('user')
->order('id')
->chunk(100, function($items) {
foreach ($items as $item) {
// 处理结果集...
if($item->status==0){
return false;
}
}
});
// 或者交给回调方法 myUserIterator 处理
Db::table('user')
->order('id')
->chunk(100, 'myUserIterator');

Laravel 5

$list = DB::table('user')
->orderBy('id')
->chunk(100, function ($items) {
foreach ($items as $item) {
//
}
});

获取 字段/单列 的值

ThinkPHP 5

$email = Db::table('user')->where('id',1)->value('email');
$emails = DB::table('user')->column('email');

Laravel 5

$email = DB::table('user')->where('id',1)->value('email');
$emails = DB::table('user')->pluck('email');

新增数据

ThinkPHP 5

$bool = DB::table('user')->insert([
'name' => '烟雨梦',
'email'=> 'john@example.com',
'sex' => 0
]);
// 返回ID
$id = Db::table('user')->insertGetId([
'name' => '烟雨梦',
'email'=> 'john@example.com',
'sex' => 0
])

Laravel 5 同 ThinkPHP 5 一样

更新数据

ThinkPHP 5

//返回更新条数
$data = DB::table('user')->where('id', 1)->save([
'name' => 'ThinkPHP 5.1'
]);

Laravel 5

$data = DB::table('user')->where('id', 1)->update([
'name' => 'Laravel 5.6'
]);

递增或递减

ThinkPHP 5

// score 字段加 1 或 加 5
Db::table('user')->where('id', 1)->setInc('score');
Db::table('user')->where('id', 1)->setInc('score', 5);
// score 字段减 1 或 减 5
Db::table('user')->where('id', 1)->setDec('score');
Db::table('user')->where('id', 1)->setDec('score', 5);

Laravel 5

// score 字段加 1 或 加 5
DB::table('user')->where('id',1)->increment('score');
DB::table('user')->where('id',1)->increment('score', 5);
// score 字段减 1 或 减 5
DB::table('user')->where('id',1)->decrement('score');
DB::table('user')->where('id',1)->decrement('score', 5);

删除数据

ThinkPHP 5

Db::table('user')->delete(1);
Db::table('user')->delete([1,2,3]);
// 无条件删除所有数据
Db::name('user')->delete(true);

Laravel 5

DB::table('user')->where( ['id' => 1] )->delete();
//清空表内容,自增恢复到初始值1
DB::table('user')->truncate();