
Zugriff auf den JSON-POST-Body in PHP
In PHP erfordert der Zugriff auf den JSON-Body einer POST-Anfrage eine bestimmte Methode. Während $_POST keine JSON-Daten verarbeiten kann, kann der php://-Eingabestream zum Abrufen verwendet werden.
Um den Hauptteil einer JSON-POST-Anfrage zu erhalten, führen Sie die folgenden Schritte aus:
-
Rufen Sie den rohen Anforderungstext ab:
Verwenden Sie file_get_contents('php://input') oder stream_get_contents(STDIN), um auf den Anforderungstext zuzugreifen.
$requestBody = file_get_contents('php://input'); // or stream_get_contents(STDIN)
-
JSON-Text analysieren:
Dekodieren Sie die JSON-Zeichenfolge mit einem JSON-Parser, um die zu extrahieren gewünschte Daten.
$data = json_decode($requestBody);
-
Zugriff die Daten:
Sie können jetzt auf die Daten des dekodierten JSON-Objekts zugreifen.
$value = $data->a; // In your example, this would be 1
Hinweis:
- Der php://-Eingabestream kann nur einmal gelesen werden, daher empfiehlt es sich, ihn bei Bedarf in einem temporären Stream zu speichern.
- Diese Methode ist nicht für mehrteilige/Formulardatenanfragen geeignet, da die Daten bereits in $_POST geparst sind.
Das obige ist der detaillierte Inhalt vonWie greife ich in PHP auf einen JSON-POST-Body zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn