sql >> Databasteknik >  >> RDS >> Mysql

hur man kodar flera rader från mysql till json med php

Problemet är att $output är en array som du måste gå igenom. Gilla:

function getTopic($conn){
    $response = array("error" => 0);
    $qry = "SELECT original_title, content, time FROM topic WHERE vis = 1";
    $result = $conn->prepare($qry);
    $result->execute();
    if($result->rowCount() > 0){
        $output = $result->fetchall();
        foreach ($output as $o){
           $response['text'] = $o['original_title'];
           $response['test'] = $o['content'];
        }
        return json_encode($response);
    }
}

Detta är för det sista svaret, men om du vill ha allt, gör:

function getTopic($conn){
    $response = array('error'=>0);
    $qry = "SELECT original_title, content, time FROM topic WHERE vis = 1";
    $result = $conn->prepare($qry);
    $result->execute();
    if($result->rowCount() > 0){
        $output = $result->fetchall();
        foreach ($output as $o){
           $response[] = array('text'=>$o['original_title'],'test'=>$o['content']);
        }
        return json_encode($response);
    }
}

Om du bara vill ha en rad lägg till en gräns för din MySQL-sats.



  1. Hur man konverterar SDO_GEOMTRY i GeoJSON

  2. Hur Tan() fungerar i PostgreSQL

  3. Postgres-anslutningen har stängts fel i Spring Boot

  4. Hur rensar man mysql-skärmkonsolen i Windows?