Exemplo n.º 1
0
function walkAndSum($data, &$sum = 0, $filter = false)
{
    if (is_numeric($data)) {
        $sum += intval($data);
    } else {
        if (is_object($data)) {
            $data = get_object_vars($data);
            if ($filter && in_array('red', $data, true)) {
                return $sum;
            }
        }
    }
    if (is_array($data)) {
        foreach ($data as $value) {
            walkAndSum($value, $sum, $filter);
        }
    }
    return $sum;
}
Exemplo n.º 2
0
<?php

require_once __DIR__ . '/common.php';
echo 'Answer: ' . walkAndSum(json_decode($input));