Implementacje protokołu Protobuf

W przypadku PHP dostępne są 2 implementacje:

  1. C: używa rozszerzenia PHP Protobuf, które zapewnia lepszą wydajność.
  2. PHP korzysta z google/protobufpakietu PHP, który jest łatwiejszy do zaimplementowania.

Zalecamy korzystanie z implementacji w języku C, ale w niektórych przypadkach (np. gdy występują ograniczenia bezpieczeństwa lub techniczne) może być potrzebny język PHP.

Implementacja PHP jest instalowana automatycznie jak każda inna zależność googleapis/gax-php w Composerze, ale jest używana w czasie wykonywania tylko wtedy, gdy implementacja C nie jest zainstalowana i skonfigurowana.

Implementacja w C

Aby zainstalować i skonfigurować rozszerzenie Protobuf PHP:

  1. Uruchom sudo pecl install protobuf z wiersza poleceń.
  2. Dodaj wiersz extension=protobuf.so do pliku php.ini.

Implementacja w PHP

Upewnij się, że implementacja C jest wyłączona, a wszystkie zależności biblioteki googleapis/gax-php są zainstalowane:

  1. W pliku php.ini wyłącz komentarze w wierszu extension=protobuf.so.
  2. Uruchom polecenie composer install w katalogu zawierającym plik composer.json projektu, nad którym pracujesz. W elementach composer.json należy podać google-ads-php lub dowolny projekt, który wymaga tego elementu jako zależności.

Określanie implementacji, której używasz

Uruchamianie php -i | grep protobuf:

  • Jeśli nie jest pusty, używasz implementacji w C.
  • W przeciwnym razie nie używasz implementacji w C, a biblioteka PHP interfejsu Google Ads API będzie korzystać z implementacji w PHP (jeśli została prawidłowo zainstalowana za pomocą Composera).