Entorno de ejecución de PHP

Tu función de Cloud Run se ejecuta en un entorno que consta de una versión del sistema operativo, además de paquetes de complementos, compatibilidad con lenguajes y la biblioteca de Functions Framework que admite y, luego, invoca la función. Este entorno se identifica con la versión del lenguaje y se conoce como el entorno de ejecución.

Estos entornos de ejecución usan nginx y PHP-FPM para entregar solicitudes. Para obtener más información sobre los entornos de ejecución en general y qué versión de Ubuntu usa cada uno de PHP, consulta el entorno de ejecución de Cloud Run Functions.

Selecciona tu entorno de ejecución

Cloud Run Functions admite varias versiones de PHP, que se enumeran en la página Compatibilidad con el entorno de ejecución. Puedes seleccionar el entorno de ejecución de PHP que prefieras para tu función durante la implementación.

gcloud

Si usas Google Cloud CLI, especifica el entorno de ejecución con el parámetro --runtime. NAME especifica el nombre de la función. Por ejemplo:

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

Para obtener más parámetros de implementación, consulta Implementa una función de Cloud Run.

Consola

Si usas la consola de Google Cloud , consulta la guía de inicio rápido de la consola deGoogle Cloud para obtener instrucciones detalladas.

Prepara funciones

Puedes preparar una función directamente desde la consola de Google Cloud o escribirla en tu máquina local y subirla. Si deseas preparar tu máquina local para el desarrollo de PHP, consulta Usa PHP en Google Cloud.

La biblioteca que invoca tu función es el Functions Framework en PHP.

Estructura del código fuente

Para que Cloud Run Functions encuentre la definición de tu función, tu código fuente debe seguir una estructura específica. Consulta Escribe funciones de Cloud Run para obtener más información.

Configura PHP

Para configurar tu función de PHP, debes usar un archivo php.ini en el directorio raíz de la función. Puedes ver la configuración de PHP existente con la función phpinfo() como se muestra en la siguiente muestra 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 '';
}

Especifica dependencias

Puedes especificar dependencias para tu función agregándolas a un archivo de proyecto llamado composer.json. Para obtener más información, consulta Especifica dependencias en PHP.