Heim  >  Artikel  >  Backend-Entwicklung  >  Informationen zur Fehlerbehandlung nach dem Upgrade von PHP7

Informationen zur Fehlerbehandlung nach dem Upgrade von PHP7

藏色散人
藏色散人nach vorne
2020-05-24 17:52:283816Durchsuche

Aufgrund der erheblichen Leistungsverbesserungen, die das Aufkommen von PHP7 mit sich brachte, wollte ich die Funktionen der neuen Version erleben und habe daher ein Upgrade durchgeführt.

Beim Anfordern der Schnittstelle auf der Website wurde ein Fehler festgestellt und die Lösung nach der Fehlerbehebung aufgezeichnet.

Nach dem Upgrade von PHP meldete die Website einen Fehler. Die Eingabeaufforderung lautet wie folgt:

Deprecated: Automatically populating $HTTP_RAW_POST_DATA is deprecated and will
be removed in a future version. To avoid this warning set
‘always_populate_raw_post_data‘ to ‘-1‘ in php.ini and use the php://input stream
instead. in Unknown on line 0
Warning: Cannot modify header information - headers already sent in Unknown on line 0

Nachdem wir die offizielle PHP-Website überprüft haben, haben wir erfahren, dass einige Funktionen in php5.6.X und späteren Versionen aufgegeben wurden. Weitere Informationen finden Sie unter:

http://php.net/manual/zh /migration56.deprecated.php

Der Grund ist:

$HTTP_RAW_POST_DATA 和 always_populate_raw_post_data

Die Verwendung von Always_populate_raw_post_data führt zu einem E_DEPRECATED-Fehler beim Auffüllen von $HTTP_RAW_POST_DATA.

Bitte verwenden Sie php://input anstelle von $HTTP_RAW_POST_DATA, da es in nachfolgenden PHP-Versionen möglicherweise entfernt wird.

Setzen Sie Always_populate_raw_post_data auf -1 (dadurch wird $HTTP_RAW_POST_DATA undefiniert, sodass kein E_DEPRECATED-Fehler auftritt), damit das neue Verhalten auftritt.

Reparaturmethode:

1. Ändern Sie die PHP-Konfigurationsdatei und suchen Sie php.ini. Aktivieren Sie Always_populate_raw_post_data und setzen Sie es auf -1.

always_populate_raw_post_data = -1

2. Wenn $HTTP_RAW_POST_DATA im Projekt verwendet wird, ändern Sie es in:

Ursprünglich $info = $HTTP_RAW_POST_DATA;

Ändern Sie es in $info = file_get_contents( 'php://input');

Empfohlen: "PHP7"

Das obige ist der detaillierte Inhalt vonInformationen zur Fehlerbehandlung nach dem Upgrade von PHP7. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:mamicode. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen