[ 'class' => AccessControl::className(), 'only' => ['logout'], 'rules' => [ [ 'actions' => ['logout'], 'allow' => true, 'roles' => ['@'], ], ], ], 'verbs' => [ 'class' => VerbFilter::className(), 'actions' => [ 'logout' => ['post'], ], ], ]; } /** * {@inheritdoc} */ public function actions() { return [ 'error' => [ 'class' => 'yii\web\ErrorAction', ], 'captcha' => [ 'class' => 'yii\captcha\CaptchaAction', 'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null, ], ]; } /** * Displays homepage. * * @return string */ public function actionIndex() { $ga=new GA(); $contentpages=$ga->contentpages(); exit; $metrics=[ 'sessions'=>"ga:sessions", 'bounceRate'=>"ga:bounceRate", 'sessionDuration'=>"ga:sessionDuration", 'hits'=>"ga:hits", 'transactions'=>"ga:transactions", 'transactionsPerSession'=>"ga:transactionsPerSession", 'transactionRevenue'=>"ga:transactionRevenue", 'totalValue'=>"ga:totalValue", 'itemQuantity'=>"ga:itemQuantity", 'productAddsToCart'=>"ga:productAddsToCart", 'productCheckouts'=>"ga:productCheckouts", 'productDetailViews'=>"ga:productDetailViews", ]; $i=1; $res=[]; $metrics=array_chunk($metrics,6,true); foreach($metrics as $metric){ $response = $this->getReport($analytics,$metric); // $this->printResults($response); $data=$this->getResults($response); if(empty($res)){ $res=$data; }else{ echo "
";
                    print_r($res);
                    print_r($data);
                    echo "1111111\r\n";
                    $res=array_merge_recursive($res,$data);
                    echo "
";
                    print_r($res);
                    exit;
                }
                // if(!empty($data)){
                    // $res=empty($res)?$data:array_merge_recursive($res,$data);
                // }
          }
          echo "
";
          print_r($res);
        exit;
        return $this->render('index');
    }

    



/**
 * Parses and prints the Analytics Reporting API V4 response.
 *
 * @param An Analytics Reporting API V4 response.
 */
function printResults($reports) {
  for ( $reportIndex = 0; $reportIndex < count( $reports ); $reportIndex++ ) {
    $report = $reports[ $reportIndex ];

    $header = $report->getColumnHeader();
    $dimensionHeaders = $header->getDimensions();
    $metricHeaders = $header->getMetricHeader()->getMetricHeaderEntries();
    $rows = $report->getData()->getRows();


    for ( $rowIndex = 0; $rowIndex < count($rows); $rowIndex++) {
      $row = $rows[ $rowIndex ];
      $dimensions = $row->getDimensions();

      $metrics = $row->getMetrics();
      if($dimensionHeaders&&$dimensions){
        for ($i = 0; $i < count($dimensionHeaders) && $i < count($dimensions); $i++) {
            print($dimensionHeaders[$i] . ": " . $dimensions[$i] . "\n\r");
            echo"
"; } } if($metricHeaders&&$metrics){ for ($j = 0; $j < count($metrics); $j++) { $values = $metrics[$j]->getValues(); for ($k = 0; $k < count($values); $k++) { $entry = $metricHeaders[$k]; print($entry->getName() . ": " . $values[$k] . "\n\r"); echo"
"; } } } } } } function getResults($reports) { $data=[]; for ( $reportIndex = 0; $reportIndex < count( $reports ); $reportIndex++ ) { $item=[]; $report = $reports[ $reportIndex ]; $header = $report->getColumnHeader(); $dimensionHeaders = $header->getDimensions(); $metricHeaders = $header->getMetricHeader()->getMetricHeaderEntries(); $rows = $report->getData()->getRows(); for ( $rowIndex = 0; $rowIndex < count($rows); $rowIndex++) { $row = $rows[ $rowIndex ]; $dimensions = $row->getDimensions(); $metrics = $row->getMetrics(); // echo "
";
        if($dimensionHeaders&&$dimensions){
        //   for ($i = 0; $i < count($dimensionHeaders) && $i < count($dimensions); $i++) {
        //         $list[$dimensionHeaders[$i]]=
        //         print($dimensionHeaders[$i] . ": " . $dimensions[$i] . "\n\r");
        //         echo"
"; // } $date=$dimensions[0]; $date=date('Y-m-d',strtotime($date)); }else{ continue; } if($metricHeaders&&$metrics){ for ($j = 0; $j < count($metrics); $j++) { $values = $metrics[$j]->getValues(); for ($k = 0; $k < count($values); $k++) { $entry = $metricHeaders[$k]; $data[$date][$entry->getName()]=$values[$k]; // print($entry->getName() . ": " . $values[$k] . "\n\r"); // echo"
"; } } } } } return $data; } }