Escape-Schrägstriche in json_encode()
Bei der Arbeit mit JSON in PHP kommt es häufig vor, dass mit Escapezeichen versehene Schrägstriche ("/") verwendet werden. während der Kodierung. Dies liegt daran, dass JSON_ENCODE() diese Zeichen automatisch maskiert, was in bestimmten Situationen problematisch sein kann.
Wenn Sie beispielsweise mit json_decode($response)->data aus Instagram abgerufene JSON-Daten dekodieren, benötigen Sie möglicherweise um die Variablen in ein PHP-Array zu analysieren, die Daten neu zu strukturieren und sie für das Caching neu zu kodieren. Beim Öffnen der Cache-Datei stellen Sie jedoch möglicherweise fest, dass die Schrägstriche maskiert wurden, etwa „http://distilleryimage4.instagram.com/410e7...“.
Um diese automatische Escape-Funktion zu verhindern, müssen Sie kann das JSON_UNESCAPED_SLASHES-Flag in PHP 5.4 oder höher verwenden:
json_encode($str, JSON_UNESCAPED_SLASHES);
Allerdings, wenn Sie es sind Wenn Sie eine frühere Version von PHP verwenden, müssen Sie vorhandene Funktionen manuell an Ihre Bedürfnisse anpassen. Ziehen Sie in Betracht, sich als Orientierungshilfe auf Ressourcen wie https://snippets.dzone.com/posts/show/7487 zu beziehen.
Hier ist eine einfache Demonstration:
$url = 'http://www.example.com/'; echo json_encode($url), "\n"; // Output: "http:\/\/www.example.com\/" echo json_encode($url, JSON_UNESCAPED_SLASHES), "\n"; // Output: "http://www.example.com/"
Indem Sie verstehen, wie Sie Schrägstriche steuern Durch das Escape in json_encode() können Sie Daten während JSON-bezogenen Vorgängen effektiv verwalten.
Das obige ist der detaillierte Inhalt vonWie kann ich verhindern, dass Schrägstriche in „json_encode()' von PHP maskiert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!