Il runtime PHP

La funzione Cloud Run viene eseguita in un ambiente costituito da una versione del sistema operativo con pacchetti aggiuntivi, supporto per le lingue e la libreria PHP Functions Framework che supporta e richiama la funzione. Questo ambiente viene identificato dalla versione della lingua ed è noto come ID runtime.

Preparazione della funzione

Puoi preparare una funzione direttamente dalla console Google Cloud o scriverla sulla tua macchina locale e caricarla. Per preparare la tua macchina locale per lo sviluppo PHP, consulta Utilizzare PHP su Google Cloud.

Seleziona il runtime

Le funzioni Cloud Run supportano diverse versioni di PHP, elencate nella sezione Ambienti di runtime e immagini di base dei linguaggi supportati. Puoi selezionare il runtime PHP preferito per la tua funzione durante l'implementazione.

gcloud

Per utilizzare le funzioni Cloud Run per eseguire il deployment di una funzione HTTP utilizzando gcloud CLI, consulta Eseguire il deployment utilizzando Google Cloud CLI.

Console

Se utilizzi la console Google Cloud, seleziona il runtime quando crei ed esegui il deployment della funzione. Per istruzioni dettagliate, consulta la guida rapida alla console Google Cloud.

Struttura del codice sorgente

Affinché le funzioni Cloud Run trovino la definizione della funzione, il codice sorgente deve seguire una struttura specifica. Per ulteriori informazioni, consulta Scrivere funzioni Cloud Run.

Configurazione PHP

Configura la funzione PHP con un file php.ini nella directory principale della funzione. Puoi visualizzare le impostazioni di configurazione PHP esistenti con la funzione phpinfo(), come mostrato nell'esempio di codice seguente:


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 '';
}

Specifica delle dipendenze

PHP utilizza Composer per gestire le dipendenze. Specifica le dipendenze per la funzione aggiungendole a un file di progetto denominato composer.json.

Il runtime PHP delle funzioni Cloud Run richiede che il framework Functions sia una dipendenza esplicita. Per aggiungere il framework Functions come dipendenza, esegui 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 pacchetto 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 file autoload.php, che require automaticamente le altre dipendenze della funzione:

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.