테스트 사이트 - 개발 중인 베타 버전입니다

js, php 배열 연결

· 12년 전 · 4989 · 5

<?php
$list =array(array('a'=>'b', 3, 4, 'bb'));
);
?>
이거를 자스에 그대로 넘겨서 자스에서도 배열로 사용하고 싶다면,

<script>
var  list = <?= json_encode($list);?>

for(var i = 0;i<list.length;i++)
{
}
</script>

이런식으로 자연스럽게 php 배열을 자스로 넘겨 줄수 있더군요.

문제는 json_encode 함수가 php5 부터 지원된다는 거 하고

json_encode() 함수가 내부적으로는 utf-8로 작동 하는듯 합니다.

즉 파일 인코딩이 ansi 로 되어져 있는경우에 한글로 된 값들은 전부 출력이 안되더 군요.
그래서 값을 넘기기 위해서는 한글로 되어져 있는 것들을 utf-8로 변환 해줘야 합니다.

<?php
function change_encode(&$val, $key)
{
if(is_array($val))
{
array_walk($val, "change_encode");
}
$val = iconv("euckr", "utf-8", $val); // 반대인가. 헷갈리네요.
}

 array_walk($list, "change_encode");

?>

 

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 5개

좋아요
12년 전
한수 배워 갑니다. 감사합니다~!
12년 전
공부의길
감사합니다.
12년 전
감사합니다.

게시글 목록

번호 제목
18088
18080
18078
18070
18061
18037
18036
18033
18022
18021
18020
18018
18004
17999
17995
17987
17982
17981
17980
17970
17965
17964
17963
17962
17960
17956
17953
17949
17930
17928