Write a function to calculate total power conception of each devices as given in the array given in the code

43 Views Asked by At
<!DOCTYPE html>
<html>
    <head>
        <title>new Page</title>
    </head>
    <body>
        <?php
            $consumption = array( 'MONDAY' => array('REFRIGERATOR' => array(3, 9,    7), 'WASHINGMACHINE' => array(2, 4, 2, 8)), 'TUESDAY' => array('REFRIGERATOR' => array(5, 3, 8), 'OVEN' => array(4, 1, 4)), 'WEDNESDAY' => array('TV' => array(6, 9), 'REFRIGERATOR' => array(2, 3, 5, 2)), 'THURSDAY' => array('TV' => array(5, 3, 3, 2), 'FAN' => array(4, 9, 8, 5)), 'FRIDAY' => array('WASHINGMACHINE' => array(8, 5), 'OVEN' => array(3, 9, 7)) );
            $data = array();
            foreach ($consumption as $k=>$subArray) {
                foreach ($subArray as $id=>$value) {
                    if(!isset($data[$id])) {
                        $data[$id] = 0;
                    }
                    $data[$id]+=array_sum($value); 
                }
            }
        ?>
    </body>
</html>

What seems to be wrong with the code? I am getting a blank page. The expected output is

Output model : array( 'REFRIGERATOR' =>47 'WASHINGMACHINE' =>29 'OVEN' =>28 'TV' =>28 'FAN' =>26)

1

There are 1 best solutions below

0
On

Because you are only initializing data and never print it. do print_r to get array elements

<!DOCTYPE html>
<html>
    <head>
        <title>new Page</title>
    </head>
    <body>
        <?php
            $consumption = array( 'MONDAY' => array('REFRIGERATOR' => array(3, 9,    7), 'WASHINGMACHINE' => array(2, 4, 2, 8)), 'TUESDAY' => array('REFRIGERATOR' => array(5, 3, 8), 'OVEN' => array(4, 1, 4)), 'WEDNESDAY' => array('TV' => array(6, 9), 'REFRIGERATOR' => array(2, 3, 5, 2)), 'THURSDAY' => array('TV' => array(5, 3, 3, 2), 'FAN' => array(4, 9, 8, 5)), 'FRIDAY' => array('WASHINGMACHINE' => array(8, 5), 'OVEN' => array(3, 9, 7)) );
            $data = array();
            foreach ($consumption as $k=>$subArray) {
                foreach ($subArray as $id=>$value) {
                    if(!isset($data[$id])) {
                        $data[$id] = 0;
                    }
                    $data[$id]+=array_sum($value); 
                }
            }
            echo "Output model :";
            print_r($data);
        ?>
    </body>
</html>