3v4l.org

run code in 300+ PHP versions simultaneously
<?php $j = <<<EOD [{"id": 1, "product": {"id": 1, "brand": {"id": 1, "name": "iphone"}}, "provider": {"id": 1, "name": "at&t"}}, {"id": 2, "product": {"id": 2, "brand": {"id": 2, "name": "iphone"}}, "provider": {"id": 1, "name": "at&t"}}, {"id": 3, "product": {"id": 3, "brand": {"id": 3, "name": "iphone"}}, "provider": {"id": 1, "name": "t-mobile"}}] EOD; $items = json_decode($j); $tm = array(); foreach ($items as $item) { $product = $item->product->brand->name; $provider = $item->provider->name; $tm[$provider][$product] = ($tm[$provider][$product] ?? 0) + 1; } print_r($tm);

preferences:
109.21 ms | 405 KiB | 5 Q