Introduzione all'uso di PHP con l'API Bing Ads

Per iniziare a sviluppare applicazioni API Bing Ads con PHP, è possibile iniziare con gli esempi forniti o seguire una delle procedure dettagliate per un'applicazione Web o desktop . Gli esempi sono stati sviluppati con Bing Ads PHP SDK ed eseguiti con PHP 7.0.6. Dovrebbe essere possibile usare altre versioni di PHP (maggiore di 5.6), pacchetti e sistemi operativi. Tuttavia, alcune parti del codice e della configurazione potrebbero dover essere modificate. Per informazioni su come configurare un ambiente di sviluppo PHP per l'uso dei servizi Web, vedere la documentazione relativa agli strumenti. Le estensioni SOAP e OpenSSL devono essere abilitate anche nel file PHP.ini. Abilitare l'estensione curl per eseguire gli esempi di caricamento bulk.

extension=php_soap.dll
extension=php_openssl.dll
extension=php_curl.dll

Saranno necessarie credenziali utente con accesso a Microsoft Advertising in ambiente di produzione o sandbox. Per l'ambiente di produzione è necessario un token per sviluppatori di produzione. Tutti i client sandbox possono usare il token per sviluppatori sandbox universale, ad esempio BBD37VB98. Per altre informazioni, vedere Introduzione all'API Bing Ads e alla sandbox.

Per eseguire l'autenticazione tramite OAuth, è anche necessario registrare un'applicazione e ottenere l'identificatore client corrispondente. È anche necessario prendere nota del segreto client e dell'URI di reindirizzamento se si sviluppa un'applicazione Web. Per altre informazioni sulla registrazione di un'applicazione nell'ambiente di produzione e sul flusso di concessione del codice di autorizzazione, vedere Autenticazione con OAuth e Autenticazione con gli SDK. Anche se nell'ambiente di produzione è necessario usare il proprio ID applicazione (ovvero l'ID client), tutti i clienti di Microsoft Advertising possono usare l'ID client "Tutorial Sample App" pubblico nella sandbox, ad esempio 00001111-aaaa-2222-bbbb-3333cccc444444. Per altre informazioni, vedere Sandbox.

Installare l'SDK

È possibile installare il Bing Ads PHP SDKusando composer package manager per recuperare da Packagist oppure clonare l'origine da GitHub. Questa guida descrive come usare Composer per ottenere la versione più recente di Bing Ads PHP SDK.

  1. Scaricare e installare Composer. Gli utenti di Microsoft Windows devono anche aggiungere composer.phar alla variabile PATH .

  2. Aprire un prompt dei comandi e digitare composer require microsoft/bingads.

    Nota

    Gli utenti di Windows che non hanno aggiunto composer.phar a PATH dovranno digitare php composer.phar require microsoft/bingads invece.

  3. Per ottenere gli aggiornamenti in futuro, digitare composer update. Se sono disponibili aggiornamenti in packagist, composer installerà la versione più recente.

Procedure dettagliate

Dopo aver installato il Bing Ads PHP SDK , è possibile esplorare gli esempi di codice API Bing Ads, scaricare gli esempi in GitHub o seguire una delle procedure dettagliate dell'applicazione per un'applicazione Web o desktop .

Uso di SoapVar

Per inviare un tipo complesso che eredita da una classe di base, è necessario codificare l'oggetto come SoapVar. Nell'esempio seguente vengono codificati gli oggetti BiddableCampaignCriterion (derivati da CampaignCriterion), LocationCriterion (derivato da Criterion) e BidMultiplier (derivati da CriterionBid).

$campaignCriterions = array();

$locationBiddableCampaignCriterion = new BiddableCampaignCriterion();
$locationBiddableCampaignCriterion->CampaignId = $campaignId;
$locationCriterion = new LocationCriterion();
$locationCriterion->LocationId = 190;
$encodedLocationCriterion = new SoapVar($locationCriterion, SOAP_ENC_OBJECT, 'LocationCriterion', $GLOBALS['CampaignProxy']->GetNamespace());
$locationBiddableCampaignCriterion->Criterion = $encodedLocationCriterion;
$bidMultiplier = new BidMultiplier();
$bidMultiplier->Multiplier = 0;
$encodedBidMultiplier = new SoapVar($bidMultiplier, SOAP_ENC_OBJECT, 'BidMultiplier', $GLOBALS['CampaignProxy']->GetNamespace());
$locationBiddableCampaignCriterion->CriterionBid = $encodedBidMultiplier;

$encodedCriterion = new SoapVar($locationBiddableCampaignCriterion, SOAP_ENC_OBJECT, 'BiddableCampaignCriterion', $GLOBALS['CampaignProxy']->GetNamespace());
$campaignCriterions[] = $encodedCriterion;

Se non si codifica CriterionBid come tipo concreto BidMultiplier, la richiesta generata SOAP è un elemento CriterionBid astratto vuoto. In questo modo si verificherà un'eccezione di serializzazione con il messaggio "Impossibile creare una classe astratta".

<ns1:CriterionBid>

L'oggetto deve essere codificato correttamente con il tipo complesso, ad esempio BidMultiplier.

<ns1:CriterionBid xsi:type="ns1:BidMultiplier">
    <ns1:Type xsi:nil="true" />
    <ns1:Multiplier>0</ns1:Multiplier>
</ns1:CriterionBid>

La documentazione di riferimento per ogni oggetto dati specifica se il tipo complesso è derivato da un tipo di base, ad esempio, vedere BiddableCampaignCriterion, LocationCriterion e BidMultiplier.

WsDL definisce anche la gerarchia, ad esempio la definizione seguente per BidMultiplier.

<xs:complexType name="BidMultiplier">
  <xs:complexContent mixed="false">
    <xs:extension base="tns:CriterionBid">
      <xs:sequence>
        <xs:element minOccurs="0" name="Multiplier" type="xs:double"/>
      </xs:sequence>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>
<xs:element name="BidMultiplier" nillable="true" type="tns:BidMultiplier"/>

Vedere anche

librerie client dell'API Bing Ads
Esempi di codice API Bing Ads
indirizzi del servizio Web API Bing Ads
Gestione di errori ed eccezioni del servizio
Sandbox