PHP 執行階段

Cloud Run 函式會在環境中執行,該環境包含作業系統版本、附加套件、語言支援,以及支援和叫用函式的 Functions Framework 程式庫。這個環境由語言版本識別,稱為「執行階段」。

這些執行階段會使用 nginxPHP-FPM 處理要求。如要進一步瞭解執行階段,以及各個 PHP 執行階段使用的 Ubuntu 版本,請參閱 Cloud Run functions 執行環境

選取執行階段

Cloud Run functions 支援多個 PHP 版本,詳情請參閱「執行階段支援」頁面。您可以在部署期間,針對函式選取偏好的 PHP 執行階段。

如果您使用的是 Google Cloud CLI,請使用 --runtime 參數指定執行階段,NAME 會指定函式名稱。例如:

gcloud functions deploy NAME --no-gen2 --runtime php82 --trigger-http

如需更多部署參數,請參閱「部署 Cloud Run function」。

函式準備

您可以在本機電腦上編寫函式,然後上傳。如要準備本機電腦以進行 PHP 開發作業,請參閱「在 Google Cloud 上使用 PHP Google Cloud」。

叫用函式的程式庫是 PHP Functions Framework

原始碼結構

如要讓 Cloud Run functions 找到函式的定義,原始碼必須遵循特定結構。詳情請參閱編寫 Cloud Run 函式一文。

PHP 設定

您可以在函式根目錄中,使用 php.ini 檔案設定 PHP 函式。您可以使用 phpinfo() 函式查看現有的 PHP 設定,如下列程式碼範例所示:

  
use Psr\Http\Message\ServerRequestInterface;

function phpInfoDemo(ServerRequestInterface $request): string
{
    // phpinfo() displays its output directly in the function's
    // HTTP response, so we don't need to explicitly return it
    //
    // Note: we recommend deleting the deployed Cloud Function once you no
    // longer need it, as phpinfo() may broadcast potential security issues.
    phpinfo();
    return '';
}

指定依附元件

如要為函式指定依附元件,請將其新增至名為 composer.json 的專案檔案。詳情請參閱「在 PHP 中指定依附元件」。