在laravel视图中检索json值


Retrive the json value in laravel view

在控制器中,我正在从数据库中检索特定的模型。

$user = UserModel::find($id);

如果我做var_dump($user),我得到以下内容:

protected 'attributes' => 
array (size=14)
  'id' => int 1
  'email' => string 'superadmin@admin.com' (length=20)
  'password' => string '$2y$10$/T5qdWHjuXikhk14WqqwwuS7POmrOzmGzePkEapaiP4cPRZ3GLv9i' (length=60)
  'permissions' => string '{"superuser":1}' (length=15)
  'activated' => int 1
       .....
       .....

我正在将数据返回给视图

return View::make('users.modalPermissions', compact('user'));

在我看来,我可以访问像

这样的数据
{{$user->email}} //superadmin@admin.com
{{$user->permissions}} //{"superuser":1}

我关心的是关于{{$user->permissions}},因为现在我得到字符串{"superuser":1}作为输出。在我看来,我如何访问它的key(superuser)value(1) ?

当字符串是json时使用;

json_decode($user->permissions, true)['superuser'];

访问超级用户信息。但我建议你在发送数据之前在你的控制器中完成所有这些所以你可以这样做;

$user->permissions['superuser'];

执行此操作;

$user->permissions = json_decode($user->permissions, true);

这将在你返回带有用户数据的视图之前进入你的控制器。

然后在视图中调用以下语句;

$user->permissions['superuser']