O tempo de execução do PHP

A sua função do Cloud Run é executada num ambiente que consiste numa versão do sistema operativo, além de pacotes de suplementos, suporte de idiomas e a biblioteca Functions Framework que suporta e invoca a sua função. Este ambiente é identificado pela versão do idioma e é conhecido como o tempo de execução.

Estes tempos de execução usam nginx e PHP-FPM para publicar pedidos. Para saber mais sobre os tempos de execução em geral e saber que versão do Ubuntu cada tempo de execução do PHP usa, consulte o ambiente de execução das funções do Cloud Run.

Selecione o tempo de execução

As funções do Cloud Run suportam várias versões do PHP, listadas na página Suporte de tempo de execução. Pode selecionar o tempo de execução do PHP preferido para a sua função durante a implementação.

gcloud

Se estiver a usar a Google Cloud CLI, especifique o tempo de execução com o parâmetro --runtime. NAME especifica o nome da função. Por exemplo:

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

Para mais parâmetros de implementação, consulte o artigo Implemente uma função do Cloud Run.

Consola

Se estiver a usar a Google Cloud consola, consulte o Google Cloud início rápido da consola para ver instruções detalhadas.

Preparação da função

Pode preparar uma função diretamente a partir da Google Cloud consola ou escrevê-la no seu computador local e carregá-la. Para preparar o seu computador local para o desenvolvimento em PHP, consulte o artigo Usar PHP no Google Cloud.

A biblioteca que invoca a sua função é o Framework de funções PHP.

Estrutura do código-fonte

Para que as funções do Cloud Run encontrem a definição da sua função, o código fonte tem de seguir uma estrutura específica. Consulte o artigo Escrever funções do Cloud Run para mais informações.

Configuração do PHP

Configura a sua função PHP com um ficheiro php.ini no diretório raiz da função. Pode ver as definições de configuração do PHP existentes com a função phpinfo(), conforme mostrado no seguinte exemplo de código:

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

Especificar dependências

Especifica as dependências da sua função adicionando-as a um ficheiro de projeto denominado composer.json. Para mais informações, consulte o artigo Especificar dependências em PHP.