2013-01-31 81 views
0

我已經創建了一個API來處理來自MySQL數據庫的數據請求。 API是用PHP實現的。2個數組轉換成JSON

我現在有一個問題,我有一個選擇查詢,它返回一個JSON對象的API調用者:

<pre> 
$queryA = "SELECT ..."; 
$queryB = "SELECT ..."; 

     $a = array(); 
     if(mysqli_num_rows($queryAResult)) 
     { 
     while($row = mysqli_fetch_assoc($queryAResult)) 
     { 
      $a_a = $row["A"]; 
      $name = $row["name"]; 

      $arr = array('a' => $a_A, 'name' => $name); 

      $a[] = array('a'=> $arr); 
     } 


       header('Content-type: application/json'); 
       echo $_GET['jsoncallback'] . '(' . json_encode(array('a'=>$a)) . ');'; 
     } 
</pre> 

如何json_encode和返回2個陣列嗎?

+0

在php中合併並輸出爲json?不太清楚你想在這裏做什麼 – 2013-01-31 14:10:36

回答

2

只需用數組

json_encode(array('a'=>$a,'b'=>$b)) 

與什麼是你的問題的陣列?

$queryA = "SELECT ..."; 
$queryB = "SELECT ..."; 

$a = array(); 
$b = array(); 
if(mysqli_num_rows($queryAResult)) 
{ 
    while($row = mysqli_fetch_assoc($queryAResult)) 
    { 
     $a[] = array('a' => $row['A'],'name' => $row['name']); 
    } 

    if(mysqli_num_rows($queryBResult)) 
    { 
     while($row = mysqli_fetch_assoc($queryBResult)) 
     { 
      $b[] = array('b' => $row['B'],'name' => $row['name']); 
     } 

     header('Content-type: application/json'); 
     echo $_GET['jsoncallback'] . '(' . json_encode(array('a'=>$a, 'b'=>$b)) . ');'; 
    } 
} 
+0

是這麼簡單嗎?檢出它。 – malteseKnight

+0

我編輯了一個添加queryB的例子。 – Spin0us