Пример #1
0
function calcJSON($data)
{
    $total = 0;
    foreach ($data as $part) {
        if (is_array($part) || is_object($part)) {
            $total += calcJSON($part);
        }
        if (is_numeric($part)) {
            $total += $part;
        }
        if (is_object($data) && is_string($part) && $part == "red") {
            return false;
        }
    }
    return $total;
}
Пример #2
0
        }
        if (is_array($item)) {
            $total += sum($item);
        } elseif (is_numeric($item)) {
            $total += $item;
        }
    }
    return $total;
}
function is_red($ob)
{
    if (!is_array($ob)) {
        return false;
    }
    if (!is_assoc($ob)) {
        return false;
    }
    foreach ($ob as $val) {
        if ($val === 'red') {
            return true;
        }
    }
    return false;
}
function is_assoc($arr)
{
    return $arr !== array_values($arr);
}
$json = file_get_contents("day12.json");
calcJSON($json);