一、数据库JSON
1、数据库写入json字段,直接通过数据的方式即可完成
$data=[
'id' =>1,
'upass' =>'admin',
'email' =>'66461682@qq.com',
'list' =>['username'=>'admin', 'gender'=>'女',
'email'=>'66461682@qq.com'
]
Db::table('students')->json(['list'])->insert($data);
2、如果要查询数据时,正确转换json数据自读那,也需要设置json方法
Db::table('students')->json(['list'])->find(12);
3、如果将json字段李的数据作为查询条件,可以通过如下方式实现
$user=Db::table('students')->json(['list'])->
where('list->uname','admin')->find();
4、如果想完全修改json数据,可以使用如下的方式实现
$data['list']=['uname'=>'zhangsan','sex'=>'男'];
Db::table('students')->json(['list'])
->where('id',2)->update($data);
5、如果只想修改json数据里的一个项目,可以使用如下的发高烧
$data['list=>uname']='李四';
Db::table('students')->json('list')
->where('id',222)->update($data);
二、模型JSON
1、想要写入json字段的字符,需要设置
//模型端
protected $json=['list'];
2、使用模型方式去新增包含json数据的字段
$user = new UserModel();
$user->status = 1;
$user->details = 123;
$user->list = ['username'=>'菲菲', 'gender'=>'女 ','email'=>'66461682@163.com'];
$user->save();
3、通过对象的方式,进行json字段的写入操作
$list=new /stdclass();
$list->email = 'feifei@163.com';
$list->uid = 1011;
$user->list = $list;
4、通过对象调用方式,直接获取json里面的数据
$user=Students::find(222);
return $user->list->uname;
5、通过json的数据查询,获取一条数据
$user=Students::where('list->uname','菲菲')->find();
return $user->list->email;
6、更新好像修改json数据,直接通过对象方式即可
$user=Students::find(222);
$user->list->uname ='菲菲';
$user->save();
本文详细介绍了ThinkPHP6.0中如何在数据库中操作JSON字段,包括直接写入、查询、作为查询条件、修改JSON数据以及通过模型进行JSON字段的增删改查操作。内容涵盖数据库中的JSON字段处理和模型层的JSON操作。
1367

被折叠的 条评论
为什么被折叠?



