Laravel has great support for JSON data. You can easily query and manipulate JSON data using Laravel’s Eloquent ORM. You can also use Laravel’s built-in JSON support to easily convert JSON data to and from PHP arrays.
However, there is one caveat when working with JSON data in Laravel. When you query a JSON column, you will not be able to use Eloquent’s usual where methods. This is because the JSON data is stored as a string in the database and not parsed into an array.
//use where $term = 'Java'; $data = ProgrammingLanguage::where('language', 'like', '"%.$term.%"')->get(); //use json_contains $keyword = 'Kotlin'; $language = ProgrammingLanguage::whereRaw('json_contains(language, \'["' . $keyword. '"]\')')->get(); //use whereJsonContains in Laravel 5.6+ $flutter = ProgrammingLanguage::whereJsonContains('language', ["Flutter"])->get(); $mobileLanguages = ProgrammingLanguage::whereJsonContains('language', ["Flutter", "React Native"])->get();