가교

src/Google/Ads/GoogleAds/vX의 소스 코드 Google Ads API PHP 클라이언트 라이브러리의 디렉터리입니다. 여기서 X는 Google Ads API입니다. GAPIC (생성된 API 클라이언트) 버전을 사용하여 자동으로 생성됩니다 Generator, 기반 게시 프로토콜 파일을 참고하세요.

생성된 소스 코드는 트레잇에 대한 참조를 포함하도록 수정되고 Google Ads API에서 작동하는 서비스 클라이언트를 만드는 데 필요한 클래스는 다음을 호출하여 생성되는 GoogleAdsClient 클래스 GoogleAdsClientBuilder::build()입니다. GoogleAdsClientGoogleAdsClientBuilder은(는) 다음 위치에 있는 수동으로 생성된 수업입니다. src/Google/Ads/GoogleAds/Lib/vX/입니다.

GAPIC v2 소스 코드

버전 v20.1.0부터 클라이언트 라이브러리는 새로운 버전의 GAPIC 소스 코드도 서비스에 요청 객체를 전달할 수 있도록 지원하는 src/Google/Ads/GoogleAds/vX 클라이언트 메서드를 참조하세요. 또한 GAPIC v2라고 하는 이 새로운 버전은 참고하시기 바랍니다. 이전의 GAPIC 소스 코드인 GAPIC v1은 2023년 말까지 각 버전에 계속 생성되고 포함됩니다.

Google Ads API PHP 클라이언트 라이브러리를 사용하면 연결할 버전을 선택할 수 있습니다. 구성 설정을 사용하는 GoogleAdsClient useGapicV2Source 이 설정이 true, 클라이언트 라이브러리는 GoogleAdsClient 객체를 생성하여 GAPIC v2 서비스 클라이언트

생성된 수업 위치

두 가지 클래스 유형이 있습니다.

GAPIC에서 생성한 클라이언트 및 관련 파일 GAPIC v1
src/Google/Ads/GoogleAds/VX/Services/Gapic/
드림 GAPIC v2: 없음 후처리된 파일만 생성됩니다.
후처리된 클라이언트 GAPIC v1
src/Google/Ads/GoogleAds/VX/Services/
드림 GAPIC v2
src/Google/Ads/GoogleAds/VX/Services/Client/

사용

GAPIC v1에서는 각 요청 매개변수를 메서드에 직접 전달해야 합니다. GAPIC v2에서는 대신 요청 객체를 전달해야 합니다. 참고: 경우에 따라 GAPIC에서는 요청 객체를 만들 수 있는 방법이 v2는 또한 required를 전달하는 편리한 build()라는 메서드를 생성합니다. 매개변수입니다.

예 1.1: 필수 매개변수가 있는 메서드

다음 샘플 코드는 GAPIC에서 CampaignService::mutate() 호출을 비교합니다. v1 및 v2입니다. 모든 매개변수 ($customerId$operations)는 다음과 같습니다. 필수 매개변수이므로 두 매개변수를 모두 허용하는 build()이 생성됩니다. 찾을 수 있습니다.

패턴 1 GAPIC v1
$campaignServiceClient
    = $googleAdsClient->getCampaignServiceClient();
$response = $campaignServiceClient->mutateCampaigns(
    $customerId,
    $campaignOperations
);
      
드림 GAPIC v2
$campaignServiceClient
    = $googleAdsClient->getCampaignServiceClient();
$response = $campaignServiceClient->mutateCampaigns(
    MutateCampaignsRequest::build(
      $customerId,
      $campaignOperations
    )
);
      
패턴 2 GAPIC v1
N/A
드림 GAPIC v2
$campaignServiceClient
    = $googleAdsClient->getCampaignServiceClient();
$request = (new MutateCampaignsRequest())
    ->setCustomerId($customerId)
    ->setCampaignOperations($campaignOperations);
$response = $campaignServiceClient->mutateCampaigns($request);
      

예시 1.2: 필수 매개변수와 선택적 매개변수가 있는 메서드

다음 샘플 코드는 GoogleAdsServiceClient::search() GAPIC v1 및 v2 이 예에서 GAPIC에 생성된 build()는 v2 소스 코드는 두 개의 매개변수 ($customerId$query)만 허용합니다. 필수 매개변수입니다. 일치하는 총 결과 수 요청 쿼리가 LIMIT 절을 무시하는 경우 다음을 사용하여 명시적으로 설정해야 합니다. setReturnTotalResultsCount()입니다. 또는 모든 매개변수를 전달할 수 있습니다. SearchGoogleAdsRequest의 생성자에 함께 전달됩니다.

패턴 1 GAPIC v1
$googleAdsServiceClient
    = $googleAdsClient->getGoogleAdsServiceClient();
$response = $googleAdsServiceClient->search(
    $customerId,
    $query,
    ['returnTotalResultsCount' => true]
);
      
드림 GAPIC v2
$googleAdsServiceClient
    = $googleAdsClient->getGoogleAdsServiceClient();
$response = $googleAdsServiceClient->search(
    SearchGoogleAdsRequest::build($customerId, $query)
        ->setReturnTotalResultsCount(true)
);
      
패턴 2 GAPIC v1
N/A
드림 GAPIC v2
$googleAdsServiceClient
    = $googleAdsClient->getGoogleAdsServiceClient();
$request = (new SearchGoogleAdsRequest())
    ->setCustomerId($customerId)
    ->setQuery($query)
    ->setReturnTotalResultsCount(true);
$response = $googleAdsServiceClient->search($request);
      
패턴 3 GAPIC v1
N/A
드림 GAPIC v2
$googleAdsServiceClient
    = $googleAdsClient->getGoogleAdsServiceClient();
$request = (new SearchGoogleAdsRequest([
    'customer_id' => $customerId,
    'query' => $query,
    'return_total_results_count' => true
]);
$response = $googleAdsServiceClient->search($request);
      

예시 2: 선택적 매개변수만 있는 메서드

GeoTargetConstantServiceClient::suggestGeoTargetConstants() 통화 비교 GAPIC v1 및 v2 모든 파라미터가 GeoTargetConstantServiceClient::suggestGeoTargetConstants()는 선택사항입니다. 이 경우 GAPIC v2 소스 코드에서 build()가 생성되지 않았습니다. 요청 객체를 직접 만들어야 합니다.

패턴 1 GAPIC v1
$geoTargetConstantServiceClient =
    $googleAdsClient->getGeoTargetConstantServiceClient();
$response = $geoTargetConstantServiceClient->suggestGeoTargetConstants([
    'locale' => $locale,
    'countryCode' => $countryCode,
    'locationNames' => new LocationNames(['names' => $locationNames])
]);
      
드림 GAPIC v2
$geoTargetConstantServiceClient =
    $googleAdsClient->getGeoTargetConstantServiceClient();
$request = (new SuggestGeoTargetConstantsRequest())
    ->setLocale($locale)
    ->setCountryCode($countryCode)
    ->setLocationNames(new LocationNames(['names' => $locationNames]));
$response =
    $geoTargetConstantServiceClient->suggestGeoTargetConstants($request);
      
패턴 2 GAPIC v1
N/A
드림 GAPIC v2
$geoTargetConstantServiceClient =
    $googleAdsClient->getGeoTargetConstantServiceClient();
$response = $geoTargetConstantServiceClient->suggestGeoTargetConstants(
    new SuggestGeoTargetConstantsRequest([
        'locale' => $locale,
        'country_code' => $countryCode,
        'location_names' => new LocationNames(['names' => $locationNames])
    ])
);