2017-05-06 13 views
0

結果的に、私のデータベースから1つのJSON文字列を取得しようとしていますが、データベースは複数の行のデータを返します。適切な書式でWhileループで複数の配列オブジェクトをマージしてからJSONをエンコードする

私の現在のPHPコード

$conn = [omitted]; 
$sql = [omitted]; 
$result = $conn->query($sql); //this query has been proven to work 
     if ($result->num_rows > 0) { 
     $rows = []; 
     while($row = $result->fetch_assoc()) { 
      $row[] = array_merge($row,$rows); 
     } 
     echo json_encode($rows); 
     } else { 
      echo "0"; 
     } 

しかし、それは$row配列にマージされています前に、このコードは$rows配列をエコー表示。

現在の結果:あなたは$行の配列に任意のデータを割り当てることはありません

[{"id":"1","team_name":"[omitted]","has_finished":"0"},{"id":"2","team_name":"[omitted]","has_finished":"0"},{"id":"3","team_name":"[omitted]","has_finished":"0"},{"id":"4","team_name":"[omitted]","has_finished":"0"},{"id":"5","team_name":"[omitted]","has_finished":"0"},{"id":"6","team_name":"[omitted]","has_finished":"0"},{"id":"7","team_name":"[omitted]","has_finished":"0"}] 

答えて

0

[] 

は結果を望んでいました。各行を配列に割り当てるには、ループのためにこれを使用します。

while($row = $result->fetch_assoc()) { 
    $rows[] = $row; 
} 
+0

ありがとうございます。見落とされた間違いは私を何時間も困惑させた。 –

+0

場合によっては、目の第2セットが必要です。 :) –

関連する問題