Reputation: 660
I have this line of codes at my Controller
to get data from google analytics
$analyticsData = Analytics::performQuery(Period::days(30),
'ga:',
[
'metrics' => 'ga:users,ga:newUsers,ga:sessions,ga:sessionsPerUser,ga:pageviews,ga:pageviewsPerSession,ga:avgSessionDuration,ga:bounceRate',
'start-date' => '2018-08-01',
'end-date' => '2018-09-02',
'dimensions' => 'ga:pageTitle',
]);
When I dd($analyticsData);
This is what I got.
This is my migration query.
Schema::create('analytics', function (Blueprint $table) {
$table->increments('id');
$table->integer('site_id');
$table->string('site_url');
$table->integer('report_id');
$table->integer('analytics_view_id');
$table->date('reportGenerated');
$table->integer('gaUsers');
$table->integer('gaNewUsers');
$table->integer('gaSessions');
$table->integer('gaSessionsPerUser');
$table->integer('gaPageviews');
$table->integer('gaPageviewsPerSession');
$table->integer('gaAvgSession');
$table->integer('gaBounceRate');
});
Now my problem is how can I able to stores those array data to my database? Thank you.
Upvotes: 0
Views: 698
Reputation: 111899
It would be something like:
$model = Analytics::create([
'gaUsers' => $analyticsData['ga:users'],
'gaNewUsers' => $analyticsData['ga:newUsers'],
// ... and so on...
]);
Just in case make sure you have those fields in $fillable
attribute of your Analytics
model.
Upvotes: 1
Reputation: 403
Try:
$analytic = new Analytics();
$analytic->gaUsers = $analyticsData['ga:users'];
$analytic->gaNewUsers = $analyticsData['ga:newUsers'];
...
$analytic->save();
Upvotes: 1