Php laravel雄辩地使用json对象在我的数据库中搜索和数组

Php laravel雄辩地使用json对象在我的数据库中搜索和数组,php,arrays,json,laravel,eloquent,Php,Arrays,Json,Laravel,Eloquent,我有一个json对象 'developer' => array ( 'count' => 1, 'docPosition' => 100, 'countCv' => 1, 'weight' => '0.077', ), 'Software Engineer' => array ( 'count' => 4, 'docPosition' => 716, 'countCv' =

我有一个json对象

'developer' => 
  array (
    'count' => 1,
    'docPosition' => 100,
    'countCv' => 1,
    'weight' => '0.077',
  ),
  'Software Engineer' => 
  array (
    'count' => 4,
    'docPosition' => 716,
    'countCv' => 4,
    'weight' => '0.308',
  ),
  'engineer' => 
  array (
    'count' => 5,
    'docPosition' => 725,
    'countCv' => 5,
    'weight' => '0.385',
  ),
  'Software Development Engineer' => 
  array (
    'count' => 1,
    'docPosition' => 1272,
    'countCv' => 1,
    'weight' => '0.077',
  ),
  'Development Engineer' => 
  array (
    'count' => 1,
    'docPosition' => 1281,
    'countCv' => 1,
    'weight' => '0.077',
  ),
  'Contract' => 
  array (
    'count' => 1,
    'docPosition' => 1303,
    'countCv' => 1,
    'weight' => '0.077',
  ),
)
我想获取对象(开发者、软件工程师、工程师等)的密钥,并使用它们在数据库中搜索名为Industry(数组)的字段中的匹配项。我不确定以下几点

  • 如何获取对象上的键并将其转换为数组
  • 在我的数据库中搜索我创建的阵列与field Industry中的阵列之间的任何匹配项
  • 我搜索过谷歌和stack,没有发现任何有用的东西。
    任何想法或策略都将不胜感激

    您可以将该json对象设置为一个集合:

    $collection=collect(json_decode($yourObject);
    
    然后拿到钥匙:

    $keys = $collection->keys();
    
    您可以像这样从数据中检索

    $data = collect($yourData);
    $results = $keys->each(function($key){
                 $data->only($key);
                 //do your logic with it
    });
    

    您使用的是什么SQL?数组是特定于供应商的列类型。iirc eloquent只是将数组转换为字符串以将其保存在数据库中。@AlexBlex我使用的mySqlmysql没有数组类型。