title: PHP Json Encoding an array
body: <p>Im a newbie in PHP (also JSON for that matter) but I am not sure/confident of the format of the json data i have. I am converting a mysql into json for use in another application, and the format i am getting is as follows:</p>
  
  <pre><code>    [
       {
          "category":
          {
              "catId":"1",
              "categoryName":"BABY FOOD",
              "categoryNotes":"ONLY baby food varieties which have been listed below should be used. However if your doctor or pediatrician requires a specific diet please contact your Rabbi for further advice."
          }
      },
      {
          "category":
          {
              "catId":"2",
              "categoryName":"BAKING INGREDIENTS",
              "categoryNotes":""
          }
      },
      {
          "category":
          {
              "catId":"131",
              "categoryName":"BEER",
              "categoryNotes":"See Alcoholic Drinks"
          }
      },
      {
          "category":
          {
              "catId":"4",
              "categoryName":"BEVERAGES - Powdered",
              "categoryNotes":""
          }
      },
      {
          "category":
          {
              "catId":"5",
              "categoryName":"BISCUITS",
              "categoryNotes":"Locally produced biscuits usually contain fats, oils or improvers of non-kosher origin.  There is a very large range of Israeli, South African and American kosher biscuits available locally. Even these imported biscuits and crackers (including Israeli produced goods) should only be used if marked with a reliable Rabbinic Hechsher. A 'K' on the packet alone is insufficient. Please note which products are dairy or pareve."
          }
      },
      {
          "category":
          {
              "catId":"6",
              "categoryName":"BREAD AND BAKERY GOODS",
              "categoryNotes":"Bread usually contains or comes in contact with Non-Kosher oils, fats or improvers and cannot be accepted as kosher without thorough investigation and subsequent authorisation"
          }
      },
      {
          "category":
          {
              "catId":"7",
              "categoryName":"BREAD\/CORN\/RICE CRUMBS",
              "categoryNotes":""
          }
      },
      {
          "category":
          {
              "catId":"8",
              "categoryName":"BUTTER AND DAIRY BLENDS",
              "categoryNotes":"Soft butters, butter spreads &amp; dairy blends are NOT ACCEPTABLE unless specifically listed. Butter made from whey cream is NOT ACCEPTABLE unless produced under Rabbinic supervision"
          }
      },
      {
          "category":
          {
              "catId":"9",
              "categoryName":"BUTTERMILK and LEBEN ",
              "categoryNotes":""
          }
      },
      {
          "category":
          {
              "catId":"10",
              "categoryName":"CAKES &amp; CAKE SHOPS",
              "categoryNotes":"Cakes and cake mixes usually contain Non-Kosher ingredients, and must only be used if they are produced under supervision &lt;br\/&gt; Cakes bought in a Non-Kosher cake shop, even if containing only kosher ingredients are NOT ACCEPTABLE because of the Non-Kosher utensils used in their preparation"
          }
      },
      {
          "category":
          {
              "catId":"11",
              "categoryName":"CEREALS ",
              "categoryNotes":""
          }
      },
      ...
  ]
  </code></pre>
  
  <p>and so forth.</p>
  
  <p>Now I am not sure if this is the right format, but my code to generate this is as follows:</p>
  
  <pre><code>            &lt;?php
  
  
              /* soak in the passed variable or set our own */
              // $approved_prod_date = $_GET['date'];
  
  
  
              $link = mysql_connect('localhost','root','broncos') or die('Cannot connect to the DB');
              mysql_select_db('iKosher',$link) or die('Cannot select the DB');
  
              /* grab the categories from the db */
              $query=  "SELECT c.id as catId, c.name as categoryName,     c.notes as categoryNotes
                  FROM        cat c
                  WHERE       1=1\n";
  
  
              if(isset($_GET['catid']) &amp;&amp; intval($_GET['catid'])) {
                  $query.="AND c.id = ";
                  $query.= $_GET['catid'];
              }   
  
  
              if(isset($_GET['startIndex']) &amp;&amp; intval($_GET['startIndex'])) {
                  if(isset($_GET['numItems']) &amp;&amp; intval($_GET['numItems'])) {
                      $query .= "\nLIMIT ";
                      $query .= $_GET['startIndex'];
                      $query .= ","; 
                      $query .= $_GET['numItems'];
                  }
              }
  
  
  
  
               // $query = "SELECT post_title, guid FROM wp_posts WHERE post_author = $user_id AND post_status = 'publish' ORDER BY ID DESC LIMIT $number_of_posts";
              $result = mysql_query($query,$link) or die('Errant query:  '.$query);
              $num=mysql_numrows($result);
  
  
              /* create one master array of the records */
                $categories = array();
                if($num) {
                  while($category = mysql_fetch_assoc($result)) {
                    $categories[] = array('category'=&gt;$category);
                  }
                }
                  header('Content-type: application/json');
                  echo json_encode($categories);
              ?&gt;
  </code></pre>
  
  <p>Based on my code, am i doing this right? Is the array converted correctly into JSON?</p>