我的新闻源类似于Facebook的新闻源。
这意味着我需要得到不“直”的行和来自MySQL的cols数据集,但更像是具有不同分支长度(和不同内容)的数据的“树”。
如果我直截了当,我将在PHP中使用大量嵌套循环 - 因为每种类型的新闻都需要不同的数据集。
新闻源的例子: 1)用户“A”添加了2个新图像(这里我需要获取user_name,user_avatar,image_path_1,image_path_2等...) 2)用户“B”已评论用户的“A”图像(此处我需要用户的“B”名称,用户的“B”头像,image_path,comment_text,用户的“A”名称等...)
明白我的意思?
所以我想要做的是将MySQL存储过程中的数据转换为JSON格式。
{"news":
[
{news_type: "new_images", user_name: "john", user_avatar: "0002.jpg", image_path: "/images/00123.jpg"}
{news_type: "comment", user_name: "john", user_avatar: "0002.jpg", comment: "hello!"}
]
}
我可以通过“concat”和“group_concat”在MySQL中进行这种转换......我只是想问你的意见是否是一个好主意 - 如果不是那么更好的方法。
感谢您的帮助!
更新 所以最后我切换到了MongoDB:)
答案 0 :(得分:3)
这不是明智之举。您应该只使用数据库服务器进行数据库工作。
如果您只是将关联数组传递给它,PHP将使用json_encode()自动为您执行所有JSON编码。没有必要重新发明轮子或使数据库服务器陷入困境。
答案 1 :(得分:0)
虽然有一个流输出类型会很方便:更少的解组/封送。如果你需要支持php和java消费者更多的数据处理。连接输出流并调用存储过程似乎不那么重要。