2011-02-03 4 views
2

에서이 \의 u0000의 없애려고이 내 $varjson_encode에서입니다 :찾아 내 JSON

위해
echo json_encode(str_replace ("\\u0000", "", $var)); 

을 없애 :이 무엇을 하시겠습니까

{ 
"key1":"\u0000data1", 
"key2":"\u0000data2", 
"key3":"\u0000data3", 
"key4":"\u0000data4 
} 

위의 \u0000이 나타나면 위의 줄은 그 줄을 지우지 않습니다.

답변

7

당신은 라운드 기능을 다른 방법을 적용해야합니다 : $ var에 배열이기 때문에

echo str_replace('\\u0000', '', json_encode($var)); 

이입니다. 모든 항목을 반복하고 그렇지 않으면 \0 바이트를 찾아야합니다.

+0

감사합니다. 귀하의 답변은 완벽하게 작동합니다! – cube

0

비슷한 결과가 나왔습니다.

This question & answer은 문제의 경로 원인을 이해하는 데 도움이되었습니다.

내 클래스 속성 (귀하의 질문에 각각 keyn에 해당)이 실제로 protected 일 필요는 없다는 것을 깨달음으로써이를 극복했습니다. 그 (것)들을 public 만들어서 나는 문제점을 전부 족 답니다.

이 방법이 프로젝트에 가장 적합한 지 또는 귀하의 프로젝트에 적합한 지 결정하는 것은 여러분에게 달려 있다고 생각합니다.