Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung der drei Methoden zum Abrufen von POST-Daten in PHP

Detaillierte Erläuterung der drei Methoden zum Abrufen von POST-Daten in PHP

墨辰丷
墨辰丷Original
2018-05-29 14:43:387972Durchsuche

In diesem Artikel werden drei Methoden für PHP zum Abrufen von POST-Daten vorgestellt. Die erste Methode ist die Verwendung von file_get_contents und die dritte Methode ist die Verwendung der globalen Variablen $GLOBALS

Drei Möglichkeiten, POST-Daten in PHP zu erhalten

Methode 1, $_POST

$ _POST oder $_REQUEST Gespeichert werden die von PHP formatierten Daten in der Form key=>value.

Methode 2, verwenden Sie file_get_contents("php://input")

Für POST-Daten ohne angegebenen Inhaltstyp können Sie verwenden file_get_contents("php://input"); um die Originaldaten abzurufen. Tatsächlich verwenden alle von POST mit PHP empfangenen Daten diese Methode. Unabhängig vom Inhaltstyp ist auch die Einbeziehung binärer Dateiströme möglich.

Im Vergleich zu $HTTP_RAW_POST_DATA belastet es den Speicher weniger und erfordert keine speziellen php.ini-Einstellungen.

php://input kann keine POST-Daten lesen, deren Content-Type multipart/form-data ist. Sie müssen den Wert „always_populate_raw_post_data“ in php.ini auf „On“ setzen.

php://input kann $_GET-Daten nicht lesen. Dies liegt daran, dass die $_GET-Daten als query_path in das PATH-Feld des HTTP-Anforderungsheaders geschrieben werden und nicht in den Hauptteil der http-Anforderung.

Methode drei, verwenden Sie die globale Variable $GLOBALS['HTTP_RAW_POST_DATA']

Der POST wird in $GLOBALS['HTTP_RAW_POST_DATA'] gespeichert. von Rohdaten.

Aber ob die POST-Daten in $GLOBALS['HTTP_RAW_POST_DATA'] gespeichert werden, hängt von der Centent-Type-Einstellung ab. Wird der POST nur dann gespeichert, wenn PHP den Content-Type nicht erkennen kann? Daten werden unverändert in die Variable $GLOBALS['HTTP_RAW_POST_DATA'] eingefügt. Wenn Content-Type=application/x-www-form-urlencoded ist, ist die Variable leer.

Darüber hinaus können auch keine POST-Daten gelesen werden, deren Content-Type multipart/form-data ist. Sie müssen außerdem den Wert „always_populate_raw_post_data“ in php.ini auf „On“ setzen, damit PHP dies immer tut Füllen Sie die POST-Daten aus.

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein.


Verwandte Empfehlungen:

So implementieren Sie die Entwicklung der WeChat Cash Red Envelope-Funktion in PHP

PHP verwendet weiterhin die Schlüsselpunkte des Überspringens des verbleibenden Codes in dieser Schleife

PHP WeChat simuliert die Anmeldung und sendet eine Nachricht an den Benutzer

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der drei Methoden zum Abrufen von POST-Daten in PHP. 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