1. 기본 사항
이 기사는 매우 심층적이므로 더 이상 세부 정보를 추가할 필요가 없습니다. 다음 코드는 JSON이 문자열 데이터를 처리하는 방법을 잘 보여줍니다. 참조:
zt 출처:
https://www.ibm.com/developerworks/cn/web/wa-lo-json/ String 객체를 JSON 형식으로 인코딩하는 경우 특수 문자를 처리해야 합니다. 또한 문자열은 (') 대신 (")로 표현해야 합니다.
static String string2Json(String s) {
StringBuilder sb = new StringBuilder(s.length() 20);
sb.append('"');
for ( int i=0 ; ichar c = s.charAt(i)
스위치(c) {
case '"':
sb. Append("\ "");
break;
case '\':
sb.append("\\");
break;
case '/':
sb.append("\/");
break;
case 'b':
sb.append("\b")
break; 🎜>sb.append("\f");
break
case 'n':
sb.append("\n")
case 'r' :
sb.append("\r");
break;
case 't':
sb.append("\t");
break;
sb .append(c);
}
}
sb.append('"');
return sb.toString();
}
2. PHP에서의 애플리케이션
Json_encode 및 json_decode는 PHP에서 문자열 유형 데이터를 캡슐화하고 분해하는 데 사용됩니다. 출력 결과에 (")를 추가합니다. 객체 내용이 (abc)이면 결과는 ("abc")입니다.
stdClass 객체 유형 데이터를 캡슐화합니다. 예를 들어 내용이 문자열인 "value" 멤버가 있는 경우 결과는 다음과 같습니다. " :"u5e7fu4e1cu4f53u80b2,CCTV5"}
3, 왜 이런 글을 쓰나요.
ZenTaoPHP 프레임워크에서는 요청 유형이 "json"인 경우 출력 결과가 JSON 형식으로 캡슐화되지만, 출력 정보를 분석해 보면 표준 JSON 형식이 아닌 것으로 확인됩니다. .
추가 조사 결과 ZenTaoPHP가 일부 데이터를 JSON으로 두 번 캡슐화했으며 출력이 "{"value":"\u5e7f\u4e1c\u4f53"}"와 유사하다는 사실을 발견했습니다.