Reputation: 715
I am trying to get data from DB into a single array
This what I have tried:
foreach ($userid as &$user){
foreach ($first_week_of_month as $day){
//Get Total Number of Personal Leads By User ID & Requested week Through Each Day
$personalleads = \DB::table('leads')
->where('owned_by_id', $id) // User ID
->where('lead_source_id', 7) // 7 = Personal Lead
->get(); // Get All Data
$user->pleads = $personalleads->count();
//Get Total Number of leads Created by Managers By User ID & Requested week Through Each Day
$managerleads = \DB::table('leads')
->where('owned_by_id', $id) // User ID
->where('lead_source_id', 3) // 3 = Manager Lead
->get(); // Get All Data
$user->mleads = $managerleads->count();
//Get Total Number of leads Created by Admins By User ID & Requested week Through Each Day
$adminleads = \DB::table('leads')
->where('owned_by_id', $id) // User ID
->where('lead_source_id', 4) // 4 = Admin Lead
->get(); // Get All Data
$user->aleads = $adminleads->count();
echo ($userid);
}
}
What I want:
[
{ "userid":1, "pleads":2, "mleads":1, "aleads":1 },
{ "userid":1, "pleads":0, "mleads":0, "aleads":0 },
{ "userid":1, "pleads":0, "mleads":0, "aleads":0 },
{ "userid":1, "pleads":1, "mleads":0, "aleads":0 },
{ "userid":1, "pleads":1, "mleads":0, "aleads":0 },
{ "userid":1, "pleads":1, "mleads":0, "aleads":0 },
{ "userid":1, "pleads":0, "mleads":0, "aleads":0 }
]
What I get:
[ { "userid":1, "pleads":2, "mleads":1, "aleads":1 } ]
[ { "userid":1, "pleads":0, "mleads":0, "aleads":0 } ]
[ { "userid":1, "pleads":0, "mleads":0, "aleads":0 } ]
[ { "userid":1, "pleads":1, "mleads":0, "aleads":0 } ]
[ { "userid":1, "pleads":1, "mleads":0, "aleads":0 } ]
[ { "userid":1, "pleads":1, "mleads":0, "aleads":0 } ]
[ { "userid":1, "pleads":0, "mleads":0, "aleads":0 } ]
[]
print_r
of what I get:
( [items:protected] => Array ([0]=> stdClass Object ([userid]=> 1[pleads]=> 2[mleads]=> 1[aleads]=> 1 )) )
( [items:protected] => Array ([0]=> stdClass Object ([userid]=> 1[pleads]=> 0[mleads]=> 0[aleads]=> 0 )) )
( [items:protected] => Array ([0]=> stdClass Object ([userid]=> 1[pleads]=> 0[mleads]=> 0[aleads]=> 0 )) )
( [items:protected] => Array ([0]=> stdClass Object ([userid]=> 1[pleads]=> 1[mleads]=> 0[aleads]=> 0 )) )
( [items:protected] => Array ([0]=> stdClass Object ([userid]=> 1[pleads]=> 1[mleads]=> 0[aleads]=> 0 )) )
( [items:protected] => Array ([0]=> stdClass Object ([userid]=> 1[pleads]=> 1[mleads]=> 0[aleads]=> 0 )) )
( [items:protected] => Array ([0]=> stdClass Object ([userid]=> 1[pleads]=> 0[mleads]=> 0[aleads]=> 0 )) )
Upvotes: 1
Views: 43
Reputation: 880
Take $result = []
before starting forloop and Just add this one line where you are echo $userID
array_push($result, $user);
Upvotes: 2