编码JSON的数组

时间:2015-09-23 10:28:12

标签: php json multidimensional-array

我需要JSON的帮助。我如何使用JSON ENCODING在php中执行此类操作? 基本上这是我想要的输出。

{
"133": ["User1","assets/hey.jpg","a"],
"244": ["User2 Cobain","assets/aa.jpg","b"],
"3": ["User4","assets/abc.jpg","c"]
}

这个格式是{"用户ID":["全名"," img_path"," add_info"]}

<?php 
include("../includes/connection.php");
$search= $mysqli->query("Select * from login_credentials");
        while($row = $search->fetch_assoc()) 
        {
            $userid = $row['UserID'];

            $fullname = $row['Fname'] . " " . $row['Lname'];
            //"133": []
        $c = array($fullname,'..//assets/elvis.jpg','http://html5-ninja.com');

            echo json_encode(array($user=>$c));             
        }
?>

1 个答案:

答案 0 :(得分:1)

不确定这是否是您要找的,但json_decode()会创建一个这样的数组:

array:3 [
  133 => array:3 [
    0 => "User1"
    1 => "assets/hey.jpg"
    2 => "a"
  ]
  244 => array:3 [
    0 => "User2 Cobain"
    1 => "assets/aa.jpg"
    2 => "b"
  ]
  3 => array:3 [
    0 => "User4"
    1 => "assets/abc.jpg"
    2 => "c"
  ]
]

代码:

  $json = '{
       "133": ["User1","assets/hey.jpg","a"],
       "244": ["User2 Cobain","assets/aa.jpg","b"],
       "3": ["User4","assets/abc.jpg","c"]
  }';
  var_dump(json_decode($json, true));