thinkphp6.0模型篇之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();
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
