3v4l.org

run code in 300+ PHP versions simultaneously
<?php $json = '{ "id": 1, "label": "Beef", "sector_page_id": null, "value": 0, "tree_children": [ { "id": 46, "label": "Beef", "sector_page_id": null, "value": 0, "tree_children": [ { "id": 47, "label": "Beef - UK", "sector_page_id": null, "value": 15, "tree_children": [] }, { "id": 48, "label": "Beef - Europe", "sector_page_id": null, "value": 25, "tree_children": [] }, { "id": 49, "label": "Beef - Rest of World", "sector_page_id": null, "value": 0, "tree_children": [] } ] } ] }'; $obj = json_decode($json); function sum_recursive(object $obj): int { foreach ($obj->tree_children as $child) { $obj->value += sum_recursive($child); } return $obj->value; } sum_recursive($obj); var_export($obj);

preferences:
26.66 ms | 405 KiB | 5 Q