2017-01-13 198 views
0

我無法完全理解下面的內容,我需要將其轉換爲JSON。Codeigniter/PHP /將對象轉換爲JSON

我的猜測是我有一個16到16的數組。看起來像一個關聯數組。困惑。

第二個問題,當我解碼($ abovearray)我得到的東西,但看起來不像JSON!任何幫助非常感謝。

以下是我需要轉換爲JSON的數組輸出示例。

array(16) { 
      [0]=> object(stdClass)#31 (25) { 
       ["id"]=> string(1) "1" 
       ["ip_address"]=> string(9) "127.0.0.3" 
       ["username"]=> string(13) "administrator" 
       [~snip~] 
       } 
      [1]=> object(stdClass)#33 (25) { 
       ["id"]=> string(1) "2" 
       ["ip_address"]=> string(15) "111.111.111.201" 
       ["username"]=> string(0) "" 
       [~snip~] 
       } 
    ...} 
+0

你有什麼是對象的數組(不是字符串數組) – bansi

+0

我看到兩種意見,但沒有明確的問題。 – ryyker

回答

0

嘗試像這樣...

$json = json_encode($array,JSON_FORCE_OBJECT); 
echo $json; 
0

在控制器

public function test() { 
    $data = array(); 

    $data[] = array(
     'id' => '1', 
     'ip_address' => "127.0.0.3", 
     'username' => 'administrator' 
    ); 

    $data[] = array(
     'id' => '2', 
     'ip_address' => "111.111.111.201", 
     'username' => '' 
    ); 

    echo json_encode($data); 
} 

應該出來把

[{"id":"1","ip_address":"127.0.0.3","username":"administrator"},{"id":"2","ip_address":"111.111.111.201","username":""}] 

<script type="text/javascript"> 
$('#commit').click(function(e){ 
    e.preventDefault(); 
    $.ajax 
    ({ 
    type: 'get', 
    url: "<?php echo base_url('welcome/test');?>", 
    dataType: 'json', 
    success: function(response) 
    { 
     alert(response['username']) // you may need to use the jquery each function 

     https://api.jquery.com/each/ 

    }); 
}); 
</script>