Aktueller Standort: Startseite> Neueste Artikel> Praktische Methode zur Lösung verstümmelter chinesischer JSON in PHP

Praktische Methode zur Lösung verstümmelter chinesischer JSON in PHP

M66 2025-08-02

Überblick über JSON -chinesische Probleme mit verstümmelten Problemen in PHP

Während der PHP -Entwicklung wird JSON häufig als häufig verwendetes Datenaustauschformat verwendet. Wenn jedoch viele Entwickler JSON -Daten verarbeiten, die chinesische Inhalte enthalten, werden sie feststellen, dass die Seite chinesische verstümmelte Code ausgibt. Der Grund für dieses Phänomen hängt normalerweise mit unsachgemäßen Codierungseinstellungen zusammen. Dieser Artikel hilft Ihnen dabei, dieses Problem durch mehrere gemeinsame Methoden zu lösen.

Stellen Sie den richtigen Antwortheader ein

Stellen Sie vor der Ausgabe von JSON -Daten sicher, dass der korrekte Antwortheader über die Headerfunktion von PHP eingestellt wird, und geben Sie explizit die Inhaltstyp und die Charaktercodierung an.

 header('Content-Type: application/json; charset=utf-8');

In diesem Antwort-Header wird der Browser mitgeteilt, dass sich der Inhalt im JSON-Format befindet und in UTF-8 codiert ist, was dazu beiträgt, dass chinesische Charaktere als verstümmelt auf dem Kunden angezeigt werden.

Fügen Sie Parameter hinzu, wenn Sie JSON_Encode verwenden

Bei der Verwendung der Funktion json_encode standardmäßig werden chinesische Zeichen von Unicode codiert. Durch Hinzufügen des Parameters json_unescaped_unicode können Sie die Chinesen behalten, da es verstopfte Code verhindern soll.

 $data = ['name' => 'Zhang San', 'age' => 25];
$json = json_encode($data, JSON_UNESCAPED_UNICODE);

Auf diese Weise werden chinesische Zeichen in der Ausgabe -JSON -Zeichenfolge nicht entkommen, wodurch ihre normale Anzeige sichergestellt wird.

Zeichenkonvertierung mit mb_convert_encoding

In einigen besonderen Szenarien gibt es auch dann, wenn der Antwortheader und die Codierungsparameter festgelegt sind, immer noch verstümmte Codes. Sie können versuchen, die Codierung der JSON -Zeichenfolge manuell durch die Funktion MB_CONVERT_ENCODING zu konvertieren.

 $data = ['name' => 'Li Si', 'age' => 30];
$json = json_encode($data);

// WilleJSONZeichenfolge vonUTF-8Wenden Sie sich anGBKCodierung
$json = mb_convert_encoding($json, 'GBK', 'UTF-8');

Dieser Code eignet sich für Situationen, in denen das Ergebnis in eine bestimmte Codierungsumgebung (wie GBK) ausgegeben werden muss. Flexible Anpassung der Zielcodierung entsprechend den tatsächlichen geschäftlichen Anforderungen.

Zusammenfassen

JSON Chinese Machtcodes ist ein häufiges, aber leicht übersehener Thema in der PHP -Entwicklung. Durch das Einstellen des Antwortheaders, die Verwendung von JSON_Encode -Parametern und die Verwendung von Zeichen für Zeichencodierungskonvertierungen bei Bedarf kann der verstümmelte Code effektiv vermieden werden. Entwickler sollten bei der Verarbeitung von JSON -Daten die Codierungskonsistenz beibehalten, um sicherzustellen, dass chinesische Informationen genau angezeigt werden können.

  • Verwandte Tags:

    JSON