PHP 有兩種 Protobuf 實作方式:
- C:使用 Protobuf PHP C 擴充功能,可大幅提升執行階段效能。
- PHP:使用
google/protobufPHP 套件,不需要額外的系統擴充功能。
請盡可能使用 C 實作,但如果安全或環境限制導致無法安裝 C 擴充功能,則可使用純 PHP 實作。
PHP 實作會自動安裝為 Composer 中 googleapis/gax-php 的依附元件,且「只有在」未安裝並啟用 C 實作時,才會在執行階段使用。
C 導入方式
如要安裝及設定 Protobuf PHP C 擴充功能,請按照下列步驟操作:
使用 PECL 安裝擴充功能:
sudo pecl install protobuf在有效的
php.ini檔案中啟用擴充功能 (適用於 CLI 和網路伺服器環境,例如 PHP-FPM 或 Apache;執行php --ini找出 CLI 設定檔):extension=protobuf.so
PHP 導入
如要使用純 PHP 實作,請確認 C 實作已停用,且 googleapis/gax-php 的所有依附元件皆已安裝:
- 註解排除或移除
php.ini檔案中的任何extension=protobuf.so(或extension=php_protobuf.dll) 行。 從包含專案
composer.json檔案的目錄執行composer install。composer.json檔案應將googleads/google-ads-php指定為依附元件。
判斷目前使用的導入方式
在終端機中執行下列指令,檢查 PHP CLI 環境是否已啟用 C 擴充功能:
php -i | grep protobuf
- 如果輸出內容「不是」空白 (例如
protobuf support => enabled),表示您使用的是 C 實作。 - 否則,您並未使用 C 實作,Google Ads API PHP 程式庫會自動改用 Composer 安裝的純 PHP 實作。