thinkphp6.0模型篇之JSON字段

本文详细介绍了ThinkPHP6.0中如何在数据库中操作JSON字段,包括直接写入、查询、作为查询条件、修改JSON数据以及通过模型进行JSON字段的增删改查操作。内容涵盖数据库中的JSON字段处理和模型层的JSON操作。

一、数据库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();
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值