Php将值附加到现有数组

时间:2016-01-28 17:19:15

标签: php mysqli

您好我需要在数组中添加一些值键对,这是mysql查询的输出。以下是代码,

 $query = "select TITLE,DESCRIPTION from  TABLE where ID='1234'";
 $result  = mysqli_query($conn, $query);

 $numrows = mysqli_num_rows($result);
 if($numrows>0)
 {
    while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
    $myArray[] = $row;
 }
}

echo json_encode($myArray);

给我结果如

[{"TITLE":"Special","DESCRIPTION":"This is DESCRIPTION."}] 

现在我需要添加另一个键值对来生成json输出,如

[{"TITLE":"Special","DESCRIPTION":"This is DESCRIPTION.","URL":"imgname.jpg"}] 

所以我添加了代码

$myArray["URL"]="imgname.jpg";
echo json_encode($myArray);

但是给我输出像,

{"0":{"TITLE":"Chef Special","DESCRIPTION":"Grilled Salmon and crab."},"URL":"imgname.jpg"} 

上面的代码有什么问题。

2 个答案:

答案 0 :(得分:3)

使用

检查您的数据
var_dump($myArray);

你会发现它是一个二维数组。您必须使用

添加数据
$myArray[0]["URL"] = "imgname.jpg";

答案 1 :(得分:1)

如果您必须在编码后添加,请反过来:

$a = json_decode($myArray,true)

使用$a['URL'] = "imgname.jpg"添加一对新的键值,然后重新编码。