php - 如何在 laravel 中使用多级 json 进行查询
问题描述
我想做一个搜索功能来搜索 json 中的一些数据。
json是这样的:
{"type1":{
"pd1":{
"price":"110","detail":{
"QAQ":{"a":"0","b":"0","c":"0","d":"0"}},
"TATTT":{"QwQ":"0","TwT":"0","QAQ":"0","TAT":"0"}}},
"type2":{
"pd2":{"price":"50","detail":{"d1":{"w1":0,"w2":0}}},
"pd3":{"price":"10","detail":{}}}}
例子:
搜索(“110”)
我希望得到
{"type1":{"pd1":{"price":"110","detail":{
"QAQ":{"a":"0","b":"0","c":"0","d":"0"},
"TATTT":{"QwQ":"0","TwT":"0","QAQ":"0","TAT":"0"}}}}
搜索(“pd3”)
得到
{"type2":{"pd3":{"price":"10","detail":{}}}}
接着
搜索(“w”)
得到
{"type1":{"pd1":{"price":"110","detail":{"QAQ":{"a":"0","b":"0","c":"0","d":"0"},"TATTT":{"QwQ":"0","TwT":"0","QAQ":"0","TAT":"0"}}},
"type2":{"pd2":{"price":"50","detail":{"d1":{"w1":0,"w2":0}}}}}
尝试使用 Jsonq,但没有成功
$jsonq = new Jsonq();
$jsonq->json($json_data);
$res = $jsonq->where("price",'=',"110")
->get();
dump($res);
#retuen only []
也许Jsonq只能搜索一级。
我不知道如何在 stackoverflow 上使 json 整洁 QAQ
解决方案
推荐阅读
- amazon-web-services - 即使文件大小为 0,S3 也会触发 Lambda
- php - 在 Laravel 中使用图像将多重数据插入数据库
- r - R:如何将日期存储在 data.frame 中并防止 R 将其转换为数字?
- python - 数据帧性能问题与排列
- linux-kernel - 构建内核模块 do_softirq() 未定义
- docker - 由于“未经授权的访问”错误,无法将 Docker 映像推送到 Heroku 存储库
- python-3.x - Python基础理解
- swift - 可编码一致性结构的 @Published 数组的可编码一致性
- java - 在 Java 中使用 AES-256-ECB 解密
- sas - 使proc列表的输出垂直?