2013-07-22 153 views
0

我有一個JSON對象,像這樣獲取價值

[ 
    [ 
    { 
     "class":"com.ehealth.data.Sample_Data", 
     "collectedBy":"2013-07-21", 
     "collectedDate":"Kamal", 
     "orderID":2, 
     "sampleID":2.897033553E9 
    }, 
    { 
     "class":"com.ehealth.data.Order_Data", 
     "doctorUsername":"Kamal", 
     "dueDate":"2014-01-02", 
     "orderDate":"2013-12-12", 
     "orderID":2, 
     "patientID":"P0001", 
     "prority":1, 
     "status":"complete", 
     "testType":"Fasting Blood Sugar" 
    } 
    ], 
    [ 
    { 
     "class":"com.ehealth.data.Sample_Data", 
     "collectedBy":"2013-07-22", 
     "collectedDate":"Kamal", 
     "orderID":3, 
     "sampleID":5.978956192E9 
    }, 
    { 
     "class":"com.ehealth.data.Order_Data", 
     "doctorUsername":"Kamal", 
     "dueDate":"2014-01-02", 
     "orderDate":"2013-12-12", 
     "orderID":3, 
     "patientID":"P0001", 
     "prority":2, 
     "status":"complete", 
     "testType":"Fasting Blood Sugar" 
    } 
    ] 
] 

和我進行譯碼後,PHP數組

$data['query'] = json_decode($curl_response); 

我嘗試訪問valuse這樣

foreach ($query as $row) { 
    echo $row->sampleID;   
} 

但是當我要訪問裏面的值我不能訪問我得到一個錯誤

A PHP Error was encountered 

Severity: Notice 

Message: Trying to get property of non-object 

任何人都可以幫助我。我不知道該怎麼辦

+0

請出示您從$獲取值數據[「查詢」];即的var_dump($數據[「查詢」] ); – ABorty

+0

我增加了輸出到我的問題 –

回答

1

你可以得到它:

foreach ($query as $row) { 
    echo $row[0]->sampleID;   
} 
+0

它工作正常,但在第二次迭代時,它給了我錯誤未定義的屬性:stdClass :: $ sampleID –

+0

更新,請再試一次請 – Bora

+0

thanx Bora它工作正常 –

0
<?php 
$str = '[[{"class":"com.ehealth.data.Sample_Data","collectedBy":"2013-07-21","collectedDate":"Kamal","orderID":2,"sampleID":2.897033553E9},{"class":"com.ehealth.data.Order_Data","doctorUsername":"Kamal","dueDate":"2014-01-02","orderDate":"2013-12-12","orderID":2,"patientID":"P0001","prority":1,"status":"complete","testType":"Fasting Blood Sugar"}],[{"class":"com.ehealth.data.Sample_Data","collectedBy":"2013-07-22","collectedDate":"Kamal","orderID":3,"sampleID":5.978956192E9},{"class":"com.ehealth.data.Order_Data","doctorUsername":"Kamal","dueDate":"2014-01-02","orderDate":"2013-12-12","orderID":3,"patientID":"P0001","prority":2,"status":"complete","testType":"Fasting Blood Sugar"}]]'; 

$json = json_decode($str,true); 

foreach ($json as $datas){ 
    foreach ($datas as $data){ 
     echo (isset($data['sampleID']) ? $data['sampleID'] :'')."<br/>"; 
    } 
} 

echo '<pre>'; 
print_r ($json); 
echo '</pre>'; 
// exit; 

?>