2014-10-30 2 views
-1

내가 가지고 있다고 가정 해 봅시다. 그런 다음PHP에서 JSON 인코딩 된 배열에 액세스하는 방법

$myArray = array(
     'userAgent' => $u_agent, 
     'name'  => $bname, 
     'version' => $version, 
     'platform' => $platform, 
     'pattern' => $pattern 
    ); 

내가 그것을 인코딩,

$ 바 =로 json_encode ($에서 myArray);

지금 내가 echo $bar;이고 다시 ajax로 전달하면 나는 각 배열 객체에 액세스 할 수 있습니다.

success: function(data) 
     { 
      var name = data.name; 
      var platform= data.platform; 

JSON으로 인코딩 된 후 어떻게 PHP로 각각 액세스 할 수 있습니까?

+2

그냥 당신이에서를 구축 배열'$ myArray'에 액세스하거나. –

+0

json 인코딩 데이터에 액세스하지 않습니다. json은 전송/통신 형식입니다. 다시 네이티브 데이터 구조로 디코드하고 액세스합니다. –

답변

0
$bar=json_decode($bar, true); 
print_r($bar); 
0

아래 코드 (index.php)를 확인하여 주시고 올바르게 진행되고 있습니다. 아약스 성공 함수에서 데이터를 얻기 전에 JSON을 구문 분석해야한다고 생각한다. 당신은, 이후의 요청에서 전송 JSON 처리에 대해 단지`json_decode()`를 이야기하는 경우

<?php 
if($_GET){ 
$myArray = array(
    'userAgent' => "FF", 
    'name'  => "Asik", 
    'version' => "1.0", 
    'platform' => "Windows", 
    'pattern' => "" 
); 

echo json_encode($myArray); 
exit; 
} 
?> 
<!DOCTYPE html> 
<html> 
<head> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
<script> 
$(document).ready(function(){ 
    $("button").click(function(){ 
    $.ajax({url:"index.php?getResponse=true",success:function(result){ 
     result = JSON.parse(result); 
     $("#div1").html(result.name); 
    }}); 
    }); 
}); 
</script> 
</head> 
<body> 

<div id="div1"><h2>Let jQuery AJAX Change This Text</h2></div> 
<button>Get External Content</button> 

</body> 
</html> 
관련 문제