CodeIgniter Forums
Need Idea foreach - Printable Version

+- CodeIgniter Forums (https://forum.codeigniter.com)
+-- Forum: Using CodeIgniter (https://forum.codeigniter.com/forumdisplay.php?fid=5)
+--- Forum: General Help (https://forum.codeigniter.com/forumdisplay.php?fid=24)
+--- Thread: Need Idea foreach (/showthread.php?tid=70548)



Need Idea foreach - googlemy - 04-25-2018

Hi CI Team,
How to foreach data like below,

Database :
Code:
ID | viewed | code
1 | 15 | US
2 | 20 | SG
3 | 10 | US
4 | 30 | SG
5 | 30 | SG
6 | 55 | MY

How to get output like below,
Code:
var gdpData = {"US": 25,

"SG": 80,

"MY": 55,
};

Thanks  Huh


RE: Need Idea foreach - neuron - 04-25-2018

where your getting data from?
if this data in database you can use group by and sum sql functions to get

viewed | code
25        | US
85        | SG
55         | MY

or if discribe it in php array: 
PHP Code:
array(
 
 array('viewed' => 25'code' => 'US'),
 
 array('viewed' => 85'code' => 'SG'),
 
 array('viewed' => 55'code' => 'MY')




your gdpData is in json format. you will need to map to 


PHP Code:
array(
 
   'US' => 25,
 
   'SG' => 85,
 
   'MY' => 55

 this format and then use json_encode PHP function. it will give following result:

{"US":25,"SG":85,"MY":55}

Also to parse json you can use json_decode function in PHP


RE: Need Idea foreach [Solved] - googlemy - 04-26-2018

(04-25-2018, 11:05 PM)neuron Wrote: where your getting data from?
if this data in database you can use group by and sum sql functions to get

viewed | code
25        | US
85        | SG
55         | MY

or if discribe it in php array: 
PHP Code:
array(
 
 array('viewed' => 25'code' => 'US'),
 
 array('viewed' => 85'code' => 'SG'),
 
 array('viewed' => 55'code' => 'MY')




your gdpData is in json format. you will need to map to 


PHP Code:
array(
 
   'US' => 25,
 
   'SG' => 85,
 
   'MY' => 55

 this format and then use json_encode PHP function. it will give following result:

{"US":25,"SG":85,"MY":55}

Also to parse json you can use json_decode function in PHP


I try use this code,
PHP Code:
$rv = array();
 
       foreach($views_data as $v) {
 
           $rv = array(
 
               $v['country_code'] => $v['viewed'],
 
           );
 
       }
 
           
        $result 
json_encode($rv,true); 

The result is OK, but how to sum the viewed ?

Thanks you neuron...


RE: Need Idea foreach - syedamirbukhari - 05-02-2018

You need to sum the result in SQL query, not in foreach.