Реализации Protobuf

Для PHP доступны две реализации:

  1. C : использует расширение PHP Protobuf , которое обеспечивает лучшую производительность.
  2. PHP : использует PHP-пакет google/protobuf , который проще реализовать.

Мы рекомендуем использовать реализацию C, если вы можете, но в некоторых случаях может потребоваться PHP (например, когда ограничения безопасности или технические ограничения).

Реализация PHP устанавливается автоматически, как и любые другие зависимости googleapis/gax-php в Composer, но она используется во время выполнения , только если реализация C не установлена ​​и не настроена.

C-реализация

Чтобы установить и настроить расширение PHP Protobuf:

  1. Запустите sudo pecl install protobuf из командной строки.
  2. Добавьте строку extension=protobuf.so в файл php.ini .

PHP-реализация

Убедитесь, что реализация C отключена и установлены все зависимости библиотеки googleapis/gax-php :

  1. Закомментируйте любую строку extension=protobuf.so в php.ini .
  2. Запустите composer install из каталога, содержащего файл composer.json проекта, над которым вы работаете. В composer.json в качестве зависимости следует указать google-ads-php или любой проект, который требует его.

Определите, какая реализация используется

Запустите php -i | grep protobuf :

  • Если не пусто, вы используете реализацию C.
  • В противном случае вы не используете реализацию C, и PHP-библиотека Google Ads API будет использовать реализацию PHP (если она правильно установлена ​​с помощью Composer).