php中把数据转成json数据文件出现Array

php中把数据库的数据显示并转成json格式
这是代码:$result=mysqli_query($link,$sql);

$messages=[];
//$messages_array=json_encode($messages);

while ($row=mysqli_fetch_assoc($result)){

$messages[$row['id']]['title']=$row['title'];
$messages[$row['id']]['content']=$row['content'];

}
//此函数功能是将数值转换成json数据存储格式
echo json_encode($messages);

//json文件存储
file_put_contents ( 'test5.json' , $messages );

保存打开test5.json就出问题了
变成了这样:Array(重复)

怎么回事

你把 $messages 转成json格式的直接输出了,写入文件的 $messages 并没有转成json格式。最后两句代码改成如下就可以了:

//此函数功能是将数值转换成json数据存储格式
echo json_encode($messages);
$messageJson = json_encode($messages);

//json文件存储
file_put_contents ( 'test5.json' , $messageJson );

file_put_contents ( 'test5.json' , json_encode($messages));就可以了