Protobuf-Implementierungen

Für PHP sind zwei Implementierungen verfügbar:

  1. C: Die Protobuf-PHP-Erweiterung wird verwendet, um die Leistung zu verbessern.
  2. PHP: Verwendet das PHP-Paket google/protobuf, das einfacher zu implementieren ist.

Wir empfehlen, nach Möglichkeit die C-Implementierung zu verwenden. In einigen Fällen ist jedoch PHP erforderlich, z. B. wenn die Sicherheits- oder technischen Einschränkungen bestehen.

Die PHP-Implementierung wird wie alle anderen googleapis/gax-php-Abhängigkeiten in Composer automatisch installiert. Sie wird jedoch zur Laufzeit nur dann 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 Zeile extension=protobuf.so hinzu.

PHP-Implementierung

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

  1. Kommentieren Sie alle extension=protobuf.so-Zeilen in php.ini aus.
  2. Führen Sie composer install aus dem Verzeichnis aus, das die Datei composer.json des Projekts enthält, an dem Sie arbeiten. Im composer.json sollte google-ads-php oder ein beliebiges Projekt angegeben werden, das dies als Abhängigkeit erfordert.

Ermitteln, welche Implementierung verwendet wird

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

  • Wenn nicht leer ist, verwenden Sie die C-Implementierung.
  • Andernfalls verwenden Sie die C-Implementierung nicht. Die PHP-Bibliothek der Google Ads API hängt von der PHP-Implementierung ab, sofern sie korrekt mit Composer installiert wurde.