convert sqlite data to json using php










0















I'm trying to convert sqlite query into json. I have the following table with two columns name and age. When I print the query the format doesn't seem to be correct. why am I getting an extra key value pair?



<?php
$db = new SQLite3('info.db');

$results = $db->query('SELECT * FROM info');
while ($row = $results->fetchArray())

$jsonArray = $row;


echo json_encode($jsonArray)
?>


output



["0":"billy","name":"billy","1":"20","age":"20"]


desired output



 ["name":"billy","age":"20"]









share|improve this question

















  • 1





    php.net/manual/en/…

    – Paul Crovella
    Nov 13 '18 at 5:00






  • 1





    fetchArray grabs both association and numerical array indexes. It defaults to SQLITE3_BOTH, use either SQLITE3_ASSOC or SQLITE3_NUM instead.

    – Ultimater
    Nov 13 '18 at 5:04











  • cloud916 check and try answer given below and let us know if any-one worked for you

    – Alive to Die
    Nov 13 '18 at 8:10
















0















I'm trying to convert sqlite query into json. I have the following table with two columns name and age. When I print the query the format doesn't seem to be correct. why am I getting an extra key value pair?



<?php
$db = new SQLite3('info.db');

$results = $db->query('SELECT * FROM info');
while ($row = $results->fetchArray())

$jsonArray = $row;


echo json_encode($jsonArray)
?>


output



["0":"billy","name":"billy","1":"20","age":"20"]


desired output



 ["name":"billy","age":"20"]









share|improve this question

















  • 1





    php.net/manual/en/…

    – Paul Crovella
    Nov 13 '18 at 5:00






  • 1





    fetchArray grabs both association and numerical array indexes. It defaults to SQLITE3_BOTH, use either SQLITE3_ASSOC or SQLITE3_NUM instead.

    – Ultimater
    Nov 13 '18 at 5:04











  • cloud916 check and try answer given below and let us know if any-one worked for you

    – Alive to Die
    Nov 13 '18 at 8:10














0












0








0








I'm trying to convert sqlite query into json. I have the following table with two columns name and age. When I print the query the format doesn't seem to be correct. why am I getting an extra key value pair?



<?php
$db = new SQLite3('info.db');

$results = $db->query('SELECT * FROM info');
while ($row = $results->fetchArray())

$jsonArray = $row;


echo json_encode($jsonArray)
?>


output



["0":"billy","name":"billy","1":"20","age":"20"]


desired output



 ["name":"billy","age":"20"]









share|improve this question














I'm trying to convert sqlite query into json. I have the following table with two columns name and age. When I print the query the format doesn't seem to be correct. why am I getting an extra key value pair?



<?php
$db = new SQLite3('info.db');

$results = $db->query('SELECT * FROM info');
while ($row = $results->fetchArray())

$jsonArray = $row;


echo json_encode($jsonArray)
?>


output



["0":"billy","name":"billy","1":"20","age":"20"]


desired output



 ["name":"billy","age":"20"]






php json sqlite






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 13 '18 at 4:57









cloud916cloud916

144




144







  • 1





    php.net/manual/en/…

    – Paul Crovella
    Nov 13 '18 at 5:00






  • 1





    fetchArray grabs both association and numerical array indexes. It defaults to SQLITE3_BOTH, use either SQLITE3_ASSOC or SQLITE3_NUM instead.

    – Ultimater
    Nov 13 '18 at 5:04











  • cloud916 check and try answer given below and let us know if any-one worked for you

    – Alive to Die
    Nov 13 '18 at 8:10













  • 1





    php.net/manual/en/…

    – Paul Crovella
    Nov 13 '18 at 5:00






  • 1





    fetchArray grabs both association and numerical array indexes. It defaults to SQLITE3_BOTH, use either SQLITE3_ASSOC or SQLITE3_NUM instead.

    – Ultimater
    Nov 13 '18 at 5:04











  • cloud916 check and try answer given below and let us know if any-one worked for you

    – Alive to Die
    Nov 13 '18 at 8:10








1




1





php.net/manual/en/…

– Paul Crovella
Nov 13 '18 at 5:00





php.net/manual/en/…

– Paul Crovella
Nov 13 '18 at 5:00




1




1





fetchArray grabs both association and numerical array indexes. It defaults to SQLITE3_BOTH, use either SQLITE3_ASSOC or SQLITE3_NUM instead.

– Ultimater
Nov 13 '18 at 5:04





fetchArray grabs both association and numerical array indexes. It defaults to SQLITE3_BOTH, use either SQLITE3_ASSOC or SQLITE3_NUM instead.

– Ultimater
Nov 13 '18 at 5:04













cloud916 check and try answer given below and let us know if any-one worked for you

– Alive to Die
Nov 13 '18 at 8:10






cloud916 check and try answer given below and let us know if any-one worked for you

– Alive to Die
Nov 13 '18 at 8:10













2 Answers
2






active

oldest

votes


















0














Change query to get only those column which are required:



$results = $db->query('SELECT name,age FROM info'); 
// if you want all column then only use *


And then use SQLITE3_ASSOC



while($row = $results->fetchArray(SQLITE3_ASSOC)){ 


Reference:- SQLite3Result::fetchArray



Parameters




mode



Controls how the next row will be returned to the caller. This
value must be one of either SQLITE3_ASSOC, SQLITE3_NUM, or
SQLITE3_BOTH.



SQLITE3_ASSOC: returns an array indexed by column name as returned in
the corresponding result set



SQLITE3_NUM: returns an array indexed by column number as returned in
the corresponding result set, starting at column 0



SQLITE3_BOTH: returns an array indexed by both column name and number
as returned in the corresponding result set, starting at column 0







share|improve this answer
































    0














    http://php.net/manual/en/pdostatement.fetch.php



    say you can use this if you using pdo



    $result = $sth->fetch(PDO::FETCH_OBJ);


    $sth is your query






    share|improve this answer
























      Your Answer






      StackExchange.ifUsing("editor", function ()
      StackExchange.using("externalEditor", function ()
      StackExchange.using("snippets", function ()
      StackExchange.snippets.init();
      );
      );
      , "code-snippets");

      StackExchange.ready(function()
      var channelOptions =
      tags: "".split(" "),
      id: "1"
      ;
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function()
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled)
      StackExchange.using("snippets", function()
      createEditor();
      );

      else
      createEditor();

      );

      function createEditor()
      StackExchange.prepareEditor(
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: true,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: 10,
      bindNavPrevention: true,
      postfix: "",
      imageUploader:
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      ,
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      );



      );













      draft saved

      draft discarded


















      StackExchange.ready(
      function ()
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53274075%2fconvert-sqlite-data-to-json-using-php%23new-answer', 'question_page');

      );

      Post as a guest















      Required, but never shown

























      2 Answers
      2






      active

      oldest

      votes








      2 Answers
      2






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      0














      Change query to get only those column which are required:



      $results = $db->query('SELECT name,age FROM info'); 
      // if you want all column then only use *


      And then use SQLITE3_ASSOC



      while($row = $results->fetchArray(SQLITE3_ASSOC)){ 


      Reference:- SQLite3Result::fetchArray



      Parameters




      mode



      Controls how the next row will be returned to the caller. This
      value must be one of either SQLITE3_ASSOC, SQLITE3_NUM, or
      SQLITE3_BOTH.



      SQLITE3_ASSOC: returns an array indexed by column name as returned in
      the corresponding result set



      SQLITE3_NUM: returns an array indexed by column number as returned in
      the corresponding result set, starting at column 0



      SQLITE3_BOTH: returns an array indexed by both column name and number
      as returned in the corresponding result set, starting at column 0







      share|improve this answer





























        0














        Change query to get only those column which are required:



        $results = $db->query('SELECT name,age FROM info'); 
        // if you want all column then only use *


        And then use SQLITE3_ASSOC



        while($row = $results->fetchArray(SQLITE3_ASSOC)){ 


        Reference:- SQLite3Result::fetchArray



        Parameters




        mode



        Controls how the next row will be returned to the caller. This
        value must be one of either SQLITE3_ASSOC, SQLITE3_NUM, or
        SQLITE3_BOTH.



        SQLITE3_ASSOC: returns an array indexed by column name as returned in
        the corresponding result set



        SQLITE3_NUM: returns an array indexed by column number as returned in
        the corresponding result set, starting at column 0



        SQLITE3_BOTH: returns an array indexed by both column name and number
        as returned in the corresponding result set, starting at column 0







        share|improve this answer



























          0












          0








          0







          Change query to get only those column which are required:



          $results = $db->query('SELECT name,age FROM info'); 
          // if you want all column then only use *


          And then use SQLITE3_ASSOC



          while($row = $results->fetchArray(SQLITE3_ASSOC)){ 


          Reference:- SQLite3Result::fetchArray



          Parameters




          mode



          Controls how the next row will be returned to the caller. This
          value must be one of either SQLITE3_ASSOC, SQLITE3_NUM, or
          SQLITE3_BOTH.



          SQLITE3_ASSOC: returns an array indexed by column name as returned in
          the corresponding result set



          SQLITE3_NUM: returns an array indexed by column number as returned in
          the corresponding result set, starting at column 0



          SQLITE3_BOTH: returns an array indexed by both column name and number
          as returned in the corresponding result set, starting at column 0







          share|improve this answer















          Change query to get only those column which are required:



          $results = $db->query('SELECT name,age FROM info'); 
          // if you want all column then only use *


          And then use SQLITE3_ASSOC



          while($row = $results->fetchArray(SQLITE3_ASSOC)){ 


          Reference:- SQLite3Result::fetchArray



          Parameters




          mode



          Controls how the next row will be returned to the caller. This
          value must be one of either SQLITE3_ASSOC, SQLITE3_NUM, or
          SQLITE3_BOTH.



          SQLITE3_ASSOC: returns an array indexed by column name as returned in
          the corresponding result set



          SQLITE3_NUM: returns an array indexed by column number as returned in
          the corresponding result set, starting at column 0



          SQLITE3_BOTH: returns an array indexed by both column name and number
          as returned in the corresponding result set, starting at column 0








          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Nov 13 '18 at 7:06

























          answered Nov 13 '18 at 5:13









          Alive to DieAlive to Die

          55.7k82869




          55.7k82869























              0














              http://php.net/manual/en/pdostatement.fetch.php



              say you can use this if you using pdo



              $result = $sth->fetch(PDO::FETCH_OBJ);


              $sth is your query






              share|improve this answer





























                0














                http://php.net/manual/en/pdostatement.fetch.php



                say you can use this if you using pdo



                $result = $sth->fetch(PDO::FETCH_OBJ);


                $sth is your query






                share|improve this answer



























                  0












                  0








                  0







                  http://php.net/manual/en/pdostatement.fetch.php



                  say you can use this if you using pdo



                  $result = $sth->fetch(PDO::FETCH_OBJ);


                  $sth is your query






                  share|improve this answer















                  http://php.net/manual/en/pdostatement.fetch.php



                  say you can use this if you using pdo



                  $result = $sth->fetch(PDO::FETCH_OBJ);


                  $sth is your query







                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited Nov 13 '18 at 5:22

























                  answered Nov 13 '18 at 5:07









                  Thomas JerikoThomas Jeriko

                  469




                  469



























                      draft saved

                      draft discarded
















































                      Thanks for contributing an answer to Stack Overflow!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid


                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.

                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function ()
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53274075%2fconvert-sqlite-data-to-json-using-php%23new-answer', 'question_page');

                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      這個網誌中的熱門文章

                      Barbados

                      How to read a connectionString WITH PROVIDER in .NET Core?

                      Node.js Script on GitHub Pages or Amazon S3