在select查询中比较json编码的数据时,如何获取列?

时间:2019-05-25 09:16:17

标签: laravel eloquent jsonencoder

users是json编码的

$agent_id = $request->get('user');

$model = AgentPermission::select('module_category')->where('users', 'like', '%$agent_id%')->get();

我想显示“模块类别”,其中“用户”列中存在json编码数据 如果工作正常,则整个代码工作正常 因为当我使用

$model = AgentPermission::select('module_category')->where('users', 'like', '%"10"%')->get();  it is working perfect

1 个答案:

答案 0 :(得分:0)

比较应该在双引号内,而不是单引号

$model = AgentPermission::select('module_category')->where('users', 'like', "%$agent_id%")->get();

因为PHP仅在使用双引号时才注入变量。

替代方法是:

$model = AgentPermission::select('module_category')->where('users', 'like', '%' . $agent_id . '%')->get();