json 파일 축소를 달성하는 방법: 1. 데이터 구조를 최적화하고 파일에 저장해야 하는 데이터 양을 줄입니다. 2. json 중국어를 트랜스코딩하는 것을 허용하지 않습니다. 3. 일반적인 json을 사용합니다. 이제 압축 알고리즘에는 "CJSON" 및 "HPack"이 포함됩니다.
프런트엔드와 백엔드가 상호 작용할 때 때로는 네트워크 요청을 줄이기 위해 주소 선택 데이터와 같은 직접 작업을 위해 수정 빈도가 매우 낮은 현지화된 파일이 생성되는 경우가 많습니다. 그것을하는 방법.
하지만 일부 적은 양의 데이터에 대해서는 매우 간단한 일이지만, 많은 양의 데이터를 접하게 되면 이것이 분명해집니다. 오늘 저는 프런트엔드의 설정된 구조에 따라 json 파일을 생성하는 경우를 만났습니다. , 파일은 4.2M 였는데 나중에는 데이터를 0.7M로 줄이는 방법을 찾았습니다. 구조를 바꾸거나 프론트엔드로 열심히 플레이하세요.
PHP를 예로 들어 "특정 압축 방법"에 대해 이야기해 보겠습니다
1. 데이터 구조를 최적화합니다
파일 크기를 줄이려면 우선순위는 파일을 어떻게 저장하느냐입니다. 파일의 데이터 양이 줄어듭니다. 해야 할 일은 실현 가능한 최소 구조를 논의하고, 불필요한 필드를 제거하고, 단어와 코드를 줄이는 것입니다.
2. json 중국어 트랜스코드를 허용하지 마세요
PHP의 json_encode() 함수를 호출하면 중국어가 유니코드로 인코딩됩니다. 이는 생성된 json 문자열을 읽을 수 있게 만드는 것입니다. 감소하지만 이 특별한 경우에는 인코딩으로 인해 발생하는 초대형 볼륨 오버헤드를 무시할 수 없습니다. 인코딩하지 않으면 파일 크기가 훨씬 작아집니다.
이 설명에는 다음 기능이면 충분합니다.
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. 압축 알고리즘 사용
이제 일반적인 json 압축 알고리즘에는 CJSON 및 HPack이 포함됩니다. 해당 알고리즘의 원칙은 키와 값을 분리하여 반복되는 키 값으로 인한 일부 공간 소비를 줄이는 것입니다. 이번에는 CJSON 알고리즘을 사용했습니다.
HPack은 기본적으로 키 값을 추출합니다. 추출 전과 후의 데이터 예는 다음과 같습니다. 매우 간단하지 않나요?
위 내용은 json 파일이 너무 큰 경우 크기를 줄이는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!