2015-05-27 14 views
2

是例如回覆:JSON回覆環路從MySQL

{"SUCCESS":[{"Hello msg":"Successfull list","LIST":{"Group 1":{"GROUPNAME":"Group 1","Persons":{"1":{"ID":2588,"NAME":"John Doe"}}}}}],"apiversion":"0.1"} 

當我贊同它,這是好的,但這種陣列是有點混亂,我,尤其是如何得不到[]在這裏我從MySQL得到陣列和「成功」之間讓他們和「你好味精」

這是最好的我走到這一步:

$someArray=array(); 
$result=mysqli_query($con, "SELECT * from tbl_Persons"); 
while ($row=mysqli_fetch_array($result)) { 
    array_push($someArray,[ 
       'ID'=>$row['id'], 
       'NAME'=>$row['name'] 
]);} 


$response=array(); 
$response['SUCCESS']=array(); 
$resposne['SUCCESS']=array('Hello msg'=>'Successfull list'); 
$response['SUCCESS']['List']['Group 1']=array('GROUPNAME'=>'Group 1'); 
$response['SUCCESS']['List']['Group 1']['Persons']=$someArray; 
echo json_encode($response); 
+0

我認爲'persons'或換句話說'$ someArray'是關聯的,但在json示例中不是數字。嘗試'$ someArray [(string)$ i] = array(「ID」=> .... –

+0

哪個標籤要從中選擇數據? – Abhishek

+0

@RoyalBg給我:PHP警告:非法偏移類型 – bartisk

回答

0

創建一個計數器變量並使用它作爲您的陣列中的字符串鍵:

$someArray=array(); 
$result=mysqli_query($con, "SELECT * from tbl_Persons"); 
$i=1; 
while ($row=mysqli_fetch_array($result)) { 
    $someArray[(string)$i++]=['ID'=>$row['id'],'NAME'=>$row['name']]; 
}