Protokol arabelleği uygulamaları

PHP için iki Protobuf uygulaması mevcuttur:

  1. C: Önemli ölçüde daha iyi çalışma zamanı performansı sağlayan Protobuf PHP C uzantısını kullanır.
  2. PHP: Ek sistem uzantıları gerektirmeyen google/protobuf PHP paketini kullanır.

Mümkün olduğunda C uygulamasını kullanın. Ancak güvenlik veya ortam kısıtlamaları nedeniyle C uzantıları yüklenemiyorsa saf PHP uygulaması kullanılabilir.

PHP uygulaması, Composer'da googleapis/gax-php bağımlılığı olarak otomatik olarak yüklenir ve yalnızca C uygulaması yüklenip etkinleştirilmediğinde çalışma zamanında kullanılır.

C uygulaması

Protobuf PHP C uzantısını yüklemek ve yapılandırmak için:

  1. PECL kullanarak uzantıyı yükleyin:

    sudo pecl install protobuf
    
  2. Etkin php.ini dosyanızda uzantıyı etkinleştirin (hem CLI hem de PHP-FPM veya Apache gibi web sunucusu ortamları için; CLI yapılandırma dosyasını bulmak için php --ini komutunu çalıştırın):

    extension=protobuf.so
    

PHP uygulaması

Saf PHP uygulamasını kullanmak için C uygulamasının devre dışı bırakıldığından ve googleapis/gax-php'nin tüm bağımlılıklarının yüklü olduğundan emin olun:

  1. php.ini dosyalarınızdaki extension=protobuf.so (veya extension=php_protobuf.dll) satırlarını açıklama satırı yapın ya da kaldırın.
  2. Projenizin composer.json dosyasını içeren dizinden composer install komutunu çalıştırın. composer.json dosyası, bağımlılık olarak googleads/google-ads-php değerini belirtmelidir.

Hangi uygulamanın kullanıldığını belirleme

C uzantısının PHP CLI ortamınızda etkin olup olmadığını kontrol etmek için terminalinizde aşağıdaki komutu çalıştırın:

php -i | grep protobuf
  • Çıkış boş değilse (örneğin, protobuf support => enabled) C uygulamasını kullanıyorsunuz demektir.
  • Aksi takdirde, C uygulamasını kullanmıyorsunuzdur ve Google Ads API PHP kitaplığı, Composer tarafından yüklenen saf PHP uygulamasına otomatik olarak geri döner.