Specifica le dipendenze in PHP
PHP usa Composer per gestire le dipendenze. Se utilizzi Cloud Shell, composer è preinstallato. Altrimenti, segui Istruzioni per l'installazione di Composer.
Creazione di un file composer.json
Il file composer.json
elenca le dipendenze della funzione. Puoi crearlo manualmente o eseguire il seguente comando:
composer init
Quando esegui questo comando, ti viene chiesto in modo interattivo di compilare i campi, offrendo al contempo alcune impostazioni predefinite intelligenti.
Dichiarazione delle dipendenze
Per dichiarare le dipendenze, aggiungi un file composer.json
contenente le dipendenze alla directory del codice della funzione. In questo esempio, è necessario il Functions Framework e aggiungere uno script start
:
Tieni presente che gli script definiti nel
file composer.json
non verranno eseguiti quando Composer può utilizzare un risultato memorizzato nella cache.
Aggiungi il framework di Functions come dipendenza
Il runtime PHP di Cloud Run Functions richiede che il framework di Functions sia un
una dipendenza esplicita. Per aggiungere il framework di Functions come dipendenza, esegui il comando
il seguente comando nella directory contenente il codice della funzione (questa directory
deve contenere anche il file composer.json
):
composer require google/cloud-functions-framework
In questo modo, il framework Functions viene aggiunto a composer.json
e il
package viene installato nella directory vendor/
.
File autoload.php
Uno dei file contenuti nella directory vendor/
è autoload.php
.
Aggiungi la seguente riga all'inizio degli script PHP per richiedere il parametro
autoload.php
, che require
sarà automaticamente l'altra funzione della tua funzione
dependencies:
require_once __DIR__ . '/vendor/autoload.php';
Per impostazione predefinita, la directory vendor/
viene ignorata nel file .gcloudignore
generato per ridurre il numero di file inviati durante il deployment.
Aggiornamento delle dipendenze
Per aggiornare le dipendenze della funzione e il file composer.lock
, utilizza la classe
Comando update
:
composer update
Questo risolve tutte le dipendenze del progetto e ne scrive le versioni esatte
composer.lock
.