"数据&#34 ;: " {\"螺纹\":{\" USER_ID \":76,\" PARENT_ID \":\" 139 \" \" ITEM_ID \":\" 178 \" \"评论\":\" S \& #34; \"的updated_at \":\" 2017年9月18日 15时19分24秒\" \" created_at \":\" 2017年9月18日 15时19分24秒\" \" ID为\" 140},\"用户\":{\" ID为\" :76,\"名称\":\"卡维\" \"姓\":\" Arasan公司\" ,\"移动\":\" 822-034-1179 \" \"电子邮件\":\" kayalmanimohana @的Gmail。 COM \" \"验证\":0,\" email_token \":\" 1ATrlUoyWy \" \" created_at \":\" 2017年9月15日 16时47分59秒\" \"的updated_at \":\" 2017年9月18日 15时18分57秒\" \"地址\":空,\"城市\":空,\"状态\" :空,\"国家\":空,\"销\":空,\"轮廓\":空,\"性别\":空,\" street_num \":空,\"提供商\":空,\" PROVIDER_ID \":空,\" is_delete \":空,\"用户名\":\"虚设\"}}",
我的数据库中有这样的数据对象。如何在数据线程中显示用户ID?我正在使用laravel
答案 0 :(得分:0)
foreach($ unread as $ unr){ $ data = json_decode($ unr-> data,true); $ user_id = $ data ['主题'] [' user_id'];
}
这使得它成为可能
答案 1 :(得分:0)
@kayal如果你还在学习那么这很好但有时你应该阅读文档
这是您可以轻松完成此操作的方法
例如
假设表名test
+------------+
| id | data |
+------------+
| 1 | {...} |
+------------+
假设您有模型Test.php
然后添加一个受保护的属性$casts
它是这个数组中的一个数组add key => value
key 是列名,值将是你要像对象一样转换的类型或者数组在这种情况下我使用的是对象。
namespace App;
class Test extends Model
{
protected $casts = ['data' => 'object']; // add this property
在你的控制器中
在这种情况下我正在使用TestController.php
namespace App\Http\Controllers;
use App\Test;
class TestController extends Controller
{
public function seeUserId()
{
$test = Test::find(1); // or your query
$user_id = $test->data->thread->user_id; // you can access like this this is only example
}
public function saveData($data)
{
$test = new Test;
$test->data = $data; // don't use json_encode() just pass any object or array ;
$test->save();
}
laravel doc: - https://laravel.com/docs/5.5/eloquent-mutators#array-and-json-casting