使用mysql_fetch_assoc的JSON多维数组

使用mysql_fetch_assoc的JSON多维数组

问题描述:

My Mysqli Updated Query and it Outputs this

SELECT milestone.id, milestone.name, milestone.date, milestone.location, milestone.story_body, milestone.short_link, milestone.created_at, 
GROUP_CONCAT(images.path) as path , images.update_type
FROM milestone
INNER JOIN images ON milestone.id = images.update_id
WHERE milestone.business_id =  '1' && milestone.status =  '1' && images.update_type =  '3'
GROUP BY milestone.id

DB Capture

How Can I form JSON object using above query?

I've tried below method which doesn't give any result

$result_array = array();
while($row = mysql_fetch_assoc($result))
{
    $result_array[] = $row;

}

I want something like this -

[  
       {  
          "id":"4",
          "name":"2nd anniversary",
          "date":"2015-12-17",
          "location":"Mumbai",
          "story_body":"Gzjjs jdk djks jdks jdkd jx djdb djd JD djbd djdj d",
          "short_link":"izWfs",
          "created_at":"2015-12-11 03:49:52",
          "path":
                 [                       
                   {"\/SupportData\/ImpalzB2B\/uploads\/90294930451448437444826.jpg"},
                   {"\/SupportData\/ImpalzB2B\/uploads\/90294930451449758248579.jpg"}
                 ],
          "update_type":"3"
       },       
       {  
          "id":"7",
          "name":"#1styearAnniversary",
          "date":"2016-01-20",
          "location":"Mumbai",
          "story_body":"Bsjsj jdkdk djdkdk dkdkf kdkf dkfj fjfj fjfkjdd djkd",
          "short_link":"FHXh0",
          "created_at":"2016-01-20 23:10:54",
          "path":"\/SupportData\/ImpalzB2B\/uploads\/11453356652175.jpg",
          "update_type":"3"
       }
    ] 

Note: I know Mysql is not being used in PHP 7. I need to replace it with PDO & Mysqli so please neglect that mistake. I am working on same meanwhile I am facing this query.

我的Mysqli更新查询并输出此 p>

  SELECT里程碑 .id,milestone.name,milestone.date,milestone.location,milestone.story_body,milestone.short_link,milestone.created_at,
GROUP_CONCAT(images.path)as path,images.update_type 
FROM里程碑
INNER JOIN图像ON里程碑。  id = images.update_id 
WHERE milestone.business_id ='1'&&  milestone.status ='1'&&  images.update_type ='3'
GROUP BY milestone.id 
  code>  pre> 
 
 

p>

如何使用上述查询形成JSON对象? p>

我尝试过以下方法,但没有给出任何结果 p>

  $  result_array = array(); 
while($ row = mysql_fetch_assoc($ result))
 {
 $ result_array [] = $ row; 
 
} 
  code>  pre> 
 
  

我想要这样的东西 - p>

  [
 {
“id”:“4”,
“name”:“2周年纪念日”,
  “date”:“2015-12-17”,
“location”:“Mumbai”,
“story_body”:“Gzjjs jdk djks jdks jdkd jx djdb djd JD djbd djdj d”,
“short_link”:“  izWfs“,
”created_at“:”2015-12-11 03:49:52“,
”path“:
 [
 {\ / {SupportData \ / ImpalzB2B \ / uploads \ /90294930451448437444826.jpg”  },
 {“\ /支持 Data \ / ImpalzB2B \ / uploads \ /90294930451449758248579.jpg“} 
 
],
”更新_类型“:”3“
},
 {
”id“:”7“,
”名称“:  “#1styearAnniversary”,
“date”:“2016-01-20”,
“location”:“Mumbai”,
“story_body”:“Bsjsj jdkdk djdkdk dkdkf kdkf dkfj fjfj fjfkjdd djkd”,
“  short_link“:”FHXh0“,
”created_at“:”2016-01-20 23:10:54“,
”path“:”\ / SupportData \ / ImpalzB2B \ / uploads \ /11453356652175.jpg“,  n“update_type”:“3”
} 
] 
  code>  pre> 
 
 

注意:我知道PHP 7中没有使用Mysql。我需要将其替换为 PDO& Mysqli所以请忽略那个错误。 我正在努力同时我正面临这个问题。 p> div>

You can do this now -

$result_array = array();
while($row = mysql_fetch_assoc($result))
{
    $temp= explode(',', $row['path']); // explode by ,
    if(count($temp) > 1) { // More than one element then assign
        $row['path']= $temp;
    } 
    $result_array[] = $row;
}