티스토리 뷰

Develope/PHP

Javascript json_decode

Jason park@ 2016. 7. 14. 14:36
반응형

PHP에서 배열변수를 javascript 배열 변수로 넘기고 싶을때


가장 많이 쓰는 방식이 PHP에서 배열 변수를 json_encode 해서 json string 으로 만든 다음 javascript에서 json parsing 을 하는 방법이다.


Javascript에서 json string을 파싱하는 방법에는 크게 3가지가 있다.


1. JSON.parse(text) : 브라우저에서 제공해주는 기본 함수를 사용하는것.

2. var obj = eval ("(" + text + ")"); : javascript eval 함수 이용하는 방법

3. Github에 많이 올라오는 json parsing 라이브러리를 사용하는 방법 


요즘에는 모바일 기반을 중점으로 많이 작업하므로 1번으로 해도 무관하며 간단하다.


하지만 PC에서 예전에는 익스7 버전이나 기타 하위버전 브라우저에서 (1.) 의 함수가 지원되지 않아 2번을 사용했었다.


사용 예제를 보자.


먼저 PHP에서 


$data_list['category1'] = array( 1 => '항목1', 2 => '항목2', 3=>'항목3');

$data_list['category2'] = array( 1 => '항목1', 2 => '항목2', 3=>'항목3');

$jsonText = json_encode($data_list);


...


Javascript 에서

var jsonText = <?=$jsonText?>;


1. var data_list = JSON.parse(jsonText);

OR

2. var data_list = eval('('+data_list+')');


위와 같이 사용하면 된다.



반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함