Lassen Sie mich zunächst drei wichtige Wissenspunkte vorstellen:
1. php://input
: Dies ist ein schreibgeschützter Stream, aus dem wir Rohdaten lesen können der Anfragetext. Es gibt alle Rohdaten nach den HTTP-Headern der Anfrage zurück, unabhängig vom Inhaltstyp.
file_get_contents()
Funktion: Diese Funktion in PHP wird verwendet, um eine Datei in einen String einzulesen. php://input
:这是一个只读流,允许我们从请求正文中读取原始数据。无论内容类型如何,它都会在请求的 HTTP 标头之后返回所有原始数据。
2、file_get_contents()
函数:PHP 中的此函数用于将文件读入字符串。
3、json_decode()
3. json_decode()
-Funktion: Diese Funktion akzeptiert einen JSON-String und konvertiert ihn in eine PHP-Variable, die ein Array oder ein Objekt sein kann.
Jeder muss wissen, dass wir die globale Variable $_POST[] verwenden können, um alle veröffentlichten Daten in PHP-Skripten zu empfangen. Wenn wir jedoch eine JSON-Zeichenfolge als Post-Daten erhalten möchten, schlägt dies fehl. Wenn wir also einen JSON-String erhalten möchten, können wir die Funktionen „php://input“ und file_get_contents() verwenden, um die JSON-Daten als Datei zu empfangen und in einen String einzulesen.
Lassen Sie es uns anhand konkreter Beispiele vorstellen:
Verwenden Sie die Funktion json_decode(), um einen JSON-String zu dekodieren.
// 从请求中获取原始数据 $json = file_get_contents('php://input'); // 将其转换为 PHP 对象 $data = json_decode($json);
Das erste Beispiel:
<?php $json = '["PHP", "HTML", "javascript"]'; $data = json_decode($json); echo $data[0];
Ausgabeergebnis:
PHP
Das zweite Beispiel:
<?php $json = '{ "title": "PHP", "site": "PHP中文网" }'; $data = json_decode($json); echo $data->title; echo "<br>"; echo $data->site;
Ausgabe:
PHP PHP中文网
Die PHP-Chinese-Website-Plattform verfügt über viele Video-Lehrressourcen, jeder ist herzlich willkommen, „PHP“ zu lernen Video" Tutorial 》!
Das obige ist der detaillierte Inhalt vonSo empfangen Sie JSON-Daten für POST mit PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!