Implementaciones de Protobuf

Hay dos implementaciones disponibles para PHP:

  1. C: Usa la extensión Protobuf para PHP, que proporciona un mejor rendimiento.
  2. PHP: Usa el paquete google/protobuf de PHP que es más fácil de implementar.

Recomendamos usar la implementación de C si es posible, pero es posible que PHP sea necesario en algunos casos (por ejemplo, cuando está limitado por restricciones técnicas o de seguridad).

La implementación en PHP se instala de forma automática como cualquier otra dependencia googleapis/gax-php en Composer, pero se usa en el entorno de ejecución solo si la implementación de C no está instalada ni configurada.

Implementación en C

Para instalar y configurar la extensión de Protobuf para PHP, sigue estos pasos:

  1. Ejecuta sudo pecl install protobuf desde la línea de comandos.
  2. Agrega una línea extension=protobuf.so al archivo php.ini.

Implementación en PHP

Asegúrate de que la implementación de C esté inhabilitada y de que todas las dependencias de la biblioteca googleapis/gax-php estén instaladas:

  1. Marca como comentario cualquier línea de extension=protobuf.so en php.ini.
  2. Ejecuta composer install desde el directorio que contiene el archivo composer.json del proyecto en el que se está trabajando. composer.json debe especificar google-ads-php o cualquier proyecto que lo requiera como dependencia.

Determinar qué implementación se está usando

Ejecuta php -i | grep protobuf:

  • Si no está vacío, usas la implementación de C.
  • De lo contrario, no usarás la implementación de C, y la biblioteca PHP de la API de Google Ads dependerá de la implementación de PHP (si se instaló correctamente con Composer).