Protobuf-Implementierungen

Für PHP sind zwei Implementierungen verfügbar:

  1. C: Verwendet die Protobuf PHP-Erweiterung, die zu einer besseren Leistung führt.
  2. PHP: Verwendet das PHP-Paket google/protobuf, das einfacher zu implementieren ist.

Wir empfehlen, wenn möglich die C-Implementierung zu verwenden, aber PHP kann in einigen Fällen erforderlich sein, z. B. wenn es durch Sicherheitsbeschränkungen oder technische Einschränkungen eingeschränkt ist.

Die PHP-Implementierung wird wie alle anderen googleapis/gax-php-Abhängigkeiten in Composer automatisch installiert, jedoch nur dann zur Laufzeit verwendet, wenn die C-Implementierung nicht installiert und konfiguriert ist.

C-Implementierung

So installieren und konfigurieren Sie die Protobuf-PHP-Erweiterung:

  1. Führen Sie sudo pecl install protobuf über die Befehlszeile aus.
  2. Fügen Sie der Datei php.ini eine extension=protobuf.so-Zeile hinzu.

PHP-Implementierung

Die C-Implementierung muss deaktiviert sein und alle Abhängigkeiten der googleapis/gax-php-Bibliothek müssen installiert sein:

  1. Kommentieren Sie jede extension=protobuf.so-Zeile in php.ini aus.
  2. Führen Sie composer install in dem Verzeichnis aus, das die Datei composer.json des Projekts enthält, an dem gearbeitet wird. In composer.json sollte google-ads-php oder ein beliebiges Projekt angegeben sein, für das dies als Abhängigkeit erforderlich ist.

Bestimmen, welche Implementierung verwendet wird

Führen Sie php -i | grep protobuf aus.

  • Wenn das Feld nicht leer ist, verwenden Sie die C-Implementierung.
  • Andernfalls verwenden Sie nicht die C-Implementierung und die Google Ads API-PHP-Bibliothek basiert auf der PHP-Implementierung (falls sie korrekt mit Composer installiert wurde).