יש שתי הטמעות של Protobuf שזמינות ל-PHP:
- C: משתמש בתוסף Protobuf PHP C, שמספק ביצועים טובים יותר בזמן הריצה.
- PHP: משתמש בחבילת ה-PHP של
google/protobuf, שלא דורשת תוספי מערכת נוספים.
אם אפשר, השתמשו בהטמעה של C, אבל אם אילוצי אבטחה או סביבה מונעים התקנה של תוספי C, אתם יכולים להשתמש בהטמעה של PHP טהור.
ההטמעה של PHP מותקנת באופן אוטומטי כתלות של googleapis/gax-php ב-Composer, ומשמשת בזמן הריצה רק אם ההטמעה של 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 מותקנים:
- מסמנים כהערה או מסירים את כל השורות של
extension=protobuf.so(אוextension=php_protobuf.dll) בקובצי ה-php.ini. מריצים את
composer installמהספרייה שמכילה את הקובץcomposer.jsonשל הפרויקט. בקובץcomposer.jsonצריך לציין אתgoogleads/google-ads-phpכתלות.
איך יודעים באיזו הטמעה משתמשים
כדי לבדוק אם תוסף C מופעל בסביבת ה-CLI של PHP, מריצים את הפקודה הבאה בטרמינל:
php -i | grep protobuf
- אם הפלט לא ריק (לדוגמה,
protobuf support => enabled), אתם משתמשים בהטמעה של C. - אחרת, אתם לא משתמשים בהטמעה של C, וספריית ה-PHP של Google Ads API חוזרת באופן אוטומטי להטמעה של PHP טהור שמותקנת על ידי Composer.