Say I have a JSON string that looks like this:
Do we have a way to treat this like a database with Kirby? I’d really like to be able to use SQL queries on this dataset, like
$small_items = $json->where(['size' => 'small']);
There’s lots of information out there on converting databases to JSON in PHP, but not the other way around…
Kirby already ships with what you need to achieve this:
$data = Data::read(__DIR__ . DS . 'data.json'); // converts JSON data to PHP array
$collection = new Collection($data);
$collection->filterBy('colour', '!=', 'red');
$collection->pluck('size', null, true); // unique sizes
Take a look at the Toolkit
collection.php file to see other available methods. They are almost the same methods as the Pages collection.
Collections, that’s brilliant. Thank you Pedro.
This is why I love Kirby. It always seems to have just what I need and nothing that I don’t.