Heim  >  Artikel  >  Web-Frontend  >  So reduzieren Sie die JSON-Datei, wenn sie zu groß ist

So reduzieren Sie die JSON-Datei, wenn sie zu groß ist

(*-*)浩
(*-*)浩Original
2019-05-18 20:05:027059Durchsuche

So reduzieren Sie JSON-Dateien: 1. Optimieren Sie die Datenstruktur und reduzieren Sie die Datenmenge, die in der Datei gespeichert werden muss. 2. Lassen Sie nicht zu, dass JSON auf Chinesisch transkodiert wird Zu den gängigen JSON-Komprimierungsalgorithmen gehören jetzt „CJSON“ und „HPack“.

So reduzieren Sie die JSON-Datei, wenn sie zu groß ist

Wenn Front-End und Back-End interagieren, werden oft lokalisierte Dateien mit extrem geringer Änderungshäufigkeit generiert und direkt verarbeitet, um Netzwerkanforderungen zu reduzieren . Operationen wie Adressauswahldaten, viele Plattformen nutzen mittlerweile solche Operationen.

Aber für einige kleine Datenmengen ist dies eine sehr einfache Sache, aber wenn ich auf große Datenmengen stoße, ist dies offensichtlich. Wenn sie gemäß der etablierten Struktur generiert werden Die Größe der Front-End-JSON-Datei beträgt 4,2 MB. Später habe ich einen Weg gefunden, die Daten auf 0,7 MB zu reduzieren klein, ich kann nur die Struktur ändern oder dem Frontend folgen.

Sprechen wir über die „spezifische Komprimierungsmethode“ am Beispiel von PHP

Optimieren Sie die Datenstruktur

Um die Dateigröße zu reduzieren, sollte die Priorität darin bestehen, die Datenmenge zu reduzieren, die die Datei speichern muss. Was getan werden muss, ist, die minimal mögliche Struktur zu diskutieren, unnötige Felder zu entfernen und die Wörter und Codes zu reduzieren.

2. Lassen Sie nicht zu, dass JSON Chinesisch transkodiert.

Beim Aufruf der PHP-Funktion json_encode() wird Chinesisch unter normalen Umständen nur reduziert die Lesbarkeit der generierten JSON-Zeichenfolge, aber in diesem speziellen Fall kann der durch die Codierung verursachte zusätzliche große Volumenaufwand nicht ignoriert werden. Ohne Kodierung wird die Datei viel kleiner sein.

Für diese Erklärung genügen die folgenden Funktionen.

function jsonEncode($da)
{
    return urldecode(json_encode(arrUrlencode($da)));
}
function arrUrlencode($da)
{
    if(is_array($da)){
        foreach($da as $k => $v) {
            if(is_array($v)){
                $da[$k] = arrUrlencode($v);
            }elseif(is_string($v) && !is_numeric($v)) {
                $da[$k] = urlencode($v);
            }
        }
    }
    return $da;
}

3. Komprimierungsalgorithmus

Gemeinsame JSON-Komprimierungsalgorithmen umfassen jetzt CJSON und HPack und sparen einen Teil des Speicherplatzverbrauchs verursacht durch doppelte Schlüsselwerte. Dieses Mal habe ich den CJSON-Algorithmus verwendet.

HPack extrahiert den Schlüsselwert im Grunde wie folgt. Es sieht eher aus wie eine tabellarische Form:

rrree

Das obige ist der detaillierte Inhalt vonSo reduzieren Sie die JSON-Datei, wenn sie zu groß ist. 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
Vorheriger Artikel:Was ist JsonObject?Nächster Artikel:Was ist JsonObject?