PHP での依存関係を指定する
PHP では、Composer を使用して依存関係を管理します。Cloud Shell を使用している場合、Composer がプリインストールされています。インストールされていない場合は、Composer のインストール手順に沿ってインストールしてください。
composer.json
ファイルの作成
composer.json
ファイルには、関数の依存関係が列挙されます。このファイルは、手動で作成するか、次のコマンドを実行して作成します。
composer init
このコマンドを実行すると、フィールドの値を対話形式で入力するよう求められます。一部のフィールドでは適切なデフォルト値が提示されます。
依存関係を宣言する
依存関係を宣言するには、依存関係を含む composer.json
ファイルを関数コードのディレクトリに追加します。この例では、Functions Framework を必須とし、start
スクリプトを追加しています。
なお、Composer がキャッシュに保存された結果を使用できる場合、composer.json
ファイルに定義したスクリプトは実行されません。
Functions Framework を依存関係として追加する
Cloud Run functions の PHP ランタイムには、Functions Framework が明示的な依存関係として必要です。Functions Framework を依存関係として追加するには、関数コードが含まれるディレクトリで次のコマンドを実行します(このディレクトリには composer.json
ファイルも含まれている必要があります)。
composer require google/cloud-functions-framework
これにより、Functions Framework が composer.json
に追加され、パッケージが vendor/
ディレクトリにインストールされます。
autoload.php
ファイル
autoload.php
は、vendor/
ディレクトリに含まれるファイルの 1 つです。
PHP スクリプトの先頭に次の行を追加して autoload.php
ファイルを require すると、関数の他の依存関係が自動的に require
されます。
require_once __DIR__ . '/vendor/autoload.php';
デフォルトでは、デプロイ時に送信されるファイル数を減らすために、生成される .gcloudignore
ファイル内で vendor/
ディレクトリは無視されます。
依存関係の更新
関数の依存関係と composer.lock
ファイルを更新するには、update
コマンドを使用します。
composer update
これにより、プロジェクトのすべての依存関係が解決され、正確なバージョンが composer.lock
に書き込まれます。