2016-08-05 29 views
0

Ich frage die Google Search Console-API ab und erhalte Daten zurück, aber ich kann die spezifischen Zeilen nicht abrufen.Abfrage der Google Search Console API PHP

$fromDate = date('Y-m-d', strtotime('-3 months')); 
$toDate = date('Y-m-d', strtotime('-1 day')); 

$client = new Google_Client(); 
$client->setAuthConfigFile(base_path().'/client_id.json'); 
$client->setAccessToken($cust->user_token); 
$client->addScope(Google_Service_Webmasters::WEBMASTERS_READONLY); 
$webmaster = new Google_Service_Webmasters($client); 
$url = $cust->console_url; 
$options = []; 

$search = new Google_Service_Webmasters_SearchAnalyticsQueryRequest; 
$search->setStartDate($fromDate); 
$search->setEndDate($toDate); 
$search->setDimensions(['date']); 
$search->setAggregationType('auto'); 

$console = $webmaster->urlcrawlerrorscounts->query($url, $options)->getCountPerTypes(); 
dd($console); 

Die Antwort;

array:20 [▼ 
    0 => Google_Service_Webmasters_UrlCrawlErrorCountsPerType {#301 ▼ 
    #collection_key: "entries" 
    #internal_gapi_mappings: [] 
    +category: "notFound" 
    #entriesType: "Google_Service_Webmasters_UrlCrawlErrorCount" 
    #entriesDataType: "array" 
    +platform: "web" 
    #modelData: array:1 [▼ 
     "entries" => array:1 [▼ 
     0 => array:2 [▼ 
      "count" => "64" 
      "timestamp" => "2016-08-04T20:15:25.816Z" 
     ] 
     ] 
    ] 
    #processed: [] 
    } 
    1 => Google_Service_Webmasters_UrlCrawlErrorCountsPerType {#302 ▶} 
    2 => Google_Service_Webmasters_UrlCrawlErrorCountsPerType {#305 ▶} 
    3 => Google_Service_Webmasters_UrlCrawlErrorCountsPerType {#306 ▶} 
    4 => Google_Service_Webmasters_UrlCrawlErrorCountsPerType {#307 ▶} 
    5 => Google_Service_Webmasters_UrlCrawlErrorCountsPerType {#308 ▶} 
    6 => Google_Service_Webmasters_UrlCrawlErrorCountsPerType {#309 ▶} 
    7 => Google_Service_Webmasters_UrlCrawlErrorCountsPerType {#310 ▶} 

Ich kann die Kategorie und die Plattform zu bekommen, kann aber nicht herausfinden, wie die Zählung für den Zugriff innerhalb #modelData> Einträge> 0> zählen

+0

Hey, ich sah nur dieses und ich versuche zu connect to the GoogleSearchConsole ... Also habe ich versucht, Ihre Vorgehensweise zu "kopieren", aber woher bekommen Sie dieses Access Token? $ client-> setAccessToken ($ cust-> user_token); Wäre sehr nett, eine Antwort von dir zu bekommen :) – trunco

Antwort

0

ich Gast Ihre Antwort ist ähnlich wie Json, Wenn das, Ihre kann versuchen $ antworten_decode = json_decode ("string json", true) Dann würde das Objekt wie ein Array zugegriffen werden.

0

Sie die Werte wie folgt abgerufen werden können, mit den Getter und Setter:

$response = $webmaster->urlcrawlerrorscounts 
     ->query($url, $options) 
     ->getCountPerTypes(); 

foreach ($response->getCountPerTypes() as $type) { 

    $entries = []; 

    foreach ($type->getEntries() as $entry) { 
     $count = $entry->getCount(); 
     $timestamp = $entry->getTimestamp(); 
     $entries[] = [$count, $timestamp]; 
    } 

    $platform = $type->getPlatform(); 
    $category = $type->getCategory(); 

    // Do what you want with it ... 
} 

Das ist alles, die Methoden dieser Klasse haben: https://api.kdyby.org/class-Google_Service_Webmasters_UrlCrawlErrorCountsPerType.html