Der Quellcode in src/Google/Ads/GoogleAds/vX
der Google Ads API-PHP-Clientbibliothek, wobei X für die Google Ads API steht
wird automatisch mit GAPIC (Generated API Client)
Generator, basierend auf den veröffentlichten
Proto
-Dateien.
Der generierte Quellcode wird dann so geändert, dass er Verweise auf Merkmale und Klassen enthält, die zum Erstellen der Dienstclients erforderlich sind, die mit der Google Ads API funktionieren. Dazu wird die Klasse GoogleAdsClient aufgerufen, die durch Aufrufen von GoogleAdsClientBuilder::build() erstellt wird. Sowohl GoogleAdsClient als auch GoogleAdsClientBuilder sind manuell erstellte Kurse in src/Google/Ads/GoogleAds/Lib/vX/.
Generierte Kursorte
Die nachbearbeiteten Serviceclients befinden sich
src/Google/Ads/GoogleAds/VX/Services/Client/
Nutzung
Sie müssen ein Anfrageobjekt erstellen und an den Client übergeben, den Sie verwenden möchten.
In einigen Fällen haben Sie mehrere Möglichkeiten, ein Anfrageobjekt zu erstellen.
da einige Clients auch eine praktische Methode namens build() zum Übergeben
erforderliche Parameter.
Beispiel 1.1: Methoden mit erforderlichen Parametern
Der folgende Beispielcode zeigt, wie CampaignService::mutate() aufgerufen wird. Alle Parameter ($customerId und $operations) sind erforderliche Parameter. Daher wird im Code build() generiert, der beide Parameter akzeptiert.
Muster 1
$campaignServiceClient = $googleAdsClient->getCampaignServiceClient(); $response = $campaignServiceClient->mutateCampaigns( MutateCampaignsRequest::build( $customerId, $campaignOperations ) );
Muster 2
$campaignServiceClient = $googleAdsClient->getCampaignServiceClient(); $request = (new MutateCampaignsRequest()) ->setCustomerId($customerId) ->setCampaignOperations($campaignOperations); $response = $campaignServiceClient->mutateCampaigns($request);
Beispiel 1.2: Methoden mit erforderlichen und optionalen Parametern
Der folgende Beispielcode ruft GoogleAdsServiceClient::search() auf. In dieser
Beispiel: Für die im Code generierte build() sind nur zwei Parameter zulässig
($customerId und $query), da dies erforderliche Parameter sind. Wenn Sie die Gesamtzahl der Ergebnisse anfordern möchten, die mit der Abfrage übereinstimmen, wobei die LIMIT-Klausel ignoriert wird, müssen Sie sie explizit mit setReturnTotalResultsCount() festlegen. Alternativ können Sie alle Parameter zusammen an den Konstruktor von SearchGoogleAdsRequest übergeben, wie in Muster 3 gezeigt.
Muster 1
$googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient(); $response = $googleAdsServiceClient->search( SearchGoogleAdsRequest::build($customerId, $query) ->setReturnTotalResultsCount(true) );
Muster 2
$googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient(); $request = (new SearchGoogleAdsRequest()) ->setCustomerId($customerId) ->setQuery($query) ->setReturnTotalResultsCount(true); $response = $googleAdsServiceClient->search($request);
Muster 3
$googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient(); $request = (new SearchGoogleAdsRequest([ 'customer_id' => $customerId, 'query' => $query, 'return_total_results_count' => true ]); $response = $googleAdsServiceClient->search($request);
Beispiel 2: Methoden mit nur optionalen Parametern
In diesem Beispiel wird gezeigt, wie Sie
GeoTargetConstantServiceClient::suggestGeoTargetConstants() Da alle
Parameter von GeoTargetConstantServiceClient::suggestGeoTargetConstants() sind
optional ist, wird in diesem Fall build() nicht im Quellcode generiert. Sie
müssen Sie das Anfrageobjekt selbst erstellen.
Muster 1
$geoTargetConstantServiceClient = $googleAdsClient->getGeoTargetConstantServiceClient(); $request = (new SuggestGeoTargetConstantsRequest()) ->setLocale($locale) ->setCountryCode($countryCode) ->setLocationNames(new LocationNames(['names' => $locationNames])); $response = $geoTargetConstantServiceClient->suggestGeoTargetConstants($request);
Muster 2
$geoTargetConstantServiceClient = $googleAdsClient->getGeoTargetConstantServiceClient(); $response = $geoTargetConstantServiceClient->suggestGeoTargetConstants( new SuggestGeoTargetConstantsRequest([ 'locale' => $locale, 'country_code' => $countryCode, 'location_names' => new LocationNames(['names' => $locationNames]) ]) );