[PHP, JAVASCRIPT] json 개행문자 오류

2021. 10. 18. 12:23PHP/ERROR

JSON 데이터를 사용할 일이 생겨서 작업을 하는중 오류가 발생하여서 작성 하게 되었습니다.

 

평소와 같이 PHP 에서 json_encode 로 작업을 하고 JAVASCRIPT 에서 파싱하여 사용을 하려고 하였는데 

 

콘솔창에 error missing ) after argument list 문구가 뜨면서 데이터가 불러와 지지 않아서 원인을 확인 하기 위하여 한참 찾다가 개행문자 오류로 ) 괄호가 닫히지 않은것을오 표현될수 있다고 찾아서 확인을 하여 수정 진행 하였습니다.

 

우선 데이터를 확인해보니 TEXTAREA 로 입력 된 게시물의 데이터를 가지고 오는 부분이 있었고 당연히 개행이 존재 하였습니다.

 

그래서 str_replace를 사용하여 치환을 한후 json 형태로 인코딩 하여 보냈더니 정상적으로 데이터를 가져올수 있었습니다.

 

				.
				.
				.
                
$conv_desc = str_replace("\n", "\\n", $desc);
$conv_desc = str_replace("\r", "\\r", $conv_desc);
$conv_desc = str_replace("\t", "\\t", $conv_desc);
$data['desc'] = $conv_desc;

$json_data = json_encode($data, JSON_UNESCAPED_UNICODE);

 

반대로 \r => \\r , \n => \\n 으로 치환을 하였으로 javascript 쪽에서 사용할때도 다시 <br> 형태로 치환을 해야 개행문자가 정상적으로 노출되는것을 확인 할 수 있었습니다.

 

관련 개시물은 이전에 작성한 

 

https://gomest.tistory.com/36

 

[JAVASCRIPT] 개행 문자 처리

TEXTAREA 로 받은 데이터를 JAVASCRIPT 에서 호출시 개행문자 처리가 되지 않고 한줄로 쭉 표시가 되어진다 이때 해당 \r\n 을 로 치환 하여 표현 될수 있도록 한다. qwer asdf zxcv 아래와 같이 할경우 첫번

gomest.tistory.com

 

글을 참조하시면 될듯 합니다.

 

감사합니다.

'PHP > ERROR' 카테고리의 다른 글

파일 업로드 용량 제한 관련 에러  (0) 2020.08.25