PHP-Laufzeitumgebung

Die Cloud Run-Funktion wird in einer Umgebung ausgeführt, die aus einer Betriebssystemversion, Add-on-Paketen, Sprachunterstützung und der PHP Functions Framework-Bibliothek besteht, die Ihre Funktion unterstützt und aufruft. Diese Umgebung wird durch die Sprachversion identifiziert und als Laufzeit-ID bezeichnet.

Funktionsvorbereitung

Sie können eine Funktion direkt über die Google Cloud -Console vorbereiten oder auf Ihrem lokalen Computer schreiben und hochladen. Informationen zum Vorbereiten Ihres lokalen Computers für die PHP-Entwicklung finden Sie unter PHP auf Google Cloud verwenden.

Laufzeit auswählen

Cloud Run-Funktionen unterstützen mehrere Versionen von PHP, die auf der Seite Unterstützte Sprachlaufzeiten und Basis-Images aufgeführt sind. Sie können die bevorzugte PHP-Laufzeit für Ihre Funktion während der Bereitstellung auswählen.

gcloud

Informationen zum Bereitstellen einer HTTP-Funktion mit Cloud Run-Funktionen und der gcloud CLI finden Sie unter Mit der Google Cloud CLI bereitstellen.

Console

Wenn Sie die Google Cloud Console verwenden, wählen Sie beim Erstellen und Bereitstellen der Funktion die Laufzeit aus. Eine ausführliche Anleitung finden Sie in der Google Cloud Console-Kurzanleitung.

Struktur des Quellcodes

Damit Cloud Run Functions die Definition Ihrer Funktion findet, muss Ihr Quellcode einer bestimmten Struktur entsprechen. Weitere Informationen finden Sie unter Cloud Run-Funktionen schreiben.

PHP-Konfiguration

Sie konfigurieren Ihre PHP-Funktion mit einer php.ini-Datei im Stammverzeichnis Ihrer Funktion. Sie können vorhandene PHP-Konfigurationseinstellungen mit der Funktion phpinfo() aufrufen, wie im folgenden Codebeispiel gezeigt:


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

Abhängigkeiten angeben

PHP verwendet Composer zum Verwalten von Abhängigkeiten. Abhängigkeiten für die Funktion werden angegeben, indem sie in eine Projektdatei namens composer.json eingefügt werden.

Für die PHP-Laufzeit von Cloud Run-Funktionen muss das Functions Framework eine explizite Abhängigkeit sein. Führen Sie den folgenden Befehl in dem Verzeichnis mit dem Funktionscode aus, um Functions Framework als Abhängigkeit hinzuzufügen. Dieses Verzeichnis muss auch diecomposer.json-Datei enthalten:

composer require google/cloud-functions-framework

Dadurch wird Functions Framework zu composer.json hinzugefügt und das Paket im Verzeichnis vendor/ installiert.

autoload.php-Datei

Eine der Dateien in Ihrem vendor/-Verzeichnis ist autoload.php.

Fügen Sie oben in Ihren PHP-Skripts die folgende Zeile ein, um die Datei autoload.php erforderlich zu machen. Dabei werden die anderen Abhängigkeiten Ihrer Funktion automatisch mit require versehen:

require_once __DIR__ . '/vendor/autoload.php';

Das Verzeichnis vendor/ wird standardmäßig in der generierten Datei .gcloudignore ignoriert, um die Anzahl der in der Bereitstellung gesendeten Dateien zu reduzieren.