2013-02-13 2 views
0

AJAX에서 가져온 데이터 (MVC-view-cakephp에서 가져온 데이터)의 배열이 있습니다. 어레이를 콤보 상자에 다시 채우고 싶습니다. 배열은 다음과 같습니다js에서 PHP 문자열 배열을 js 배열로 변환

Array (
    [266] => Andy Employee II 
    [26] => Annette Oliveira 
    [214] => Edwina Umeyor 
    [39] => Eva Britton 
    [193] => Leigh Otterson 
    [68] => Louise Edelston 
    [71] => Margaret Williams 
    [97] => Simon Harris 
) 

답변

1

당신은 당신은 자바 스크립트 객체로 PHP 배열을 켭니다 json_encode 기능을 사용

<script type="text/javascript"> 
var arr = <?php echo json_encode($myarray);?>; 
</script> 
+0

태그를 사용할 필요가 없습니다. ... 그렇지 않으면 배열에 아무 것도 없습니다. – Fury

2

처럼 PHP json_encode 기능을 사용할 수 있습니다. json_encode에 대한 자세한 내용은 PHP manual에서 확인할 수 있습니다.

<?php 
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); 

echo json_encode($arr); 
?> 
1

이렇게하려면 사용자 지정 파서를 작성해야합니다. 당신은 인터넷에서 하나를 찾을 가능성이 적습니다.

여기서 가장 좋은 해결책은 cakephp 스크립트에서이 배열을 JSON으로 출력하도록하는 것입니다. JSON은 json_encode을 사용하여 PHP로 쉽게 생성 할 수 있으며 물론 JavaScript는 JSON 객체를 읽는 데 아주 능숙합니다.

1

자바 스크립트에는 연관 배열이 없습니다. 대신 객체를 사용합니다. PHP에서 echo json_encode ($ yourArray); 대신 지금 무엇을 반환하는지 (vardump처럼 보입니까?).

AJAX 호출에서 JSON을 예상되는 컨텐츠 리턴 유형으로 설정하십시오.

관련 문제