需要在MySQL表中组合成数组,相同的值组

时间:2011-12-19 10:31:20

标签: php mysql

我一直在尝试各种方法来实现这一点,我有一个包含电子邮件的表格。原因是,我宁愿存储它们,而是每隔24小时将它们发送给每个收件人,并将数据整理成一封电子邮件,而不是发送数十封类似的电子邮件。

所以我有来自,主题和消息字段,我想找到所有去往同一地址的数据,并将它们放在一个以该电子邮件地址为关键字的数组中。

因此,我可以使用密钥作为邮件功能中的to字段来遍历数组,并在发送之前将内容循环处理为一封电子邮件。

如果有人知道如何使用MySQL查询或在PHP中做到这一点,那将是非常棒的。

感谢。

我已经得到了这个,但它并没有像我希望的那样工作,当数据库在to字段中存储多个相同的值组时,我在数组中只有一个。

while($data = mysql_fetch_assoc($query)){
    $array[$data['to']] = $data;
}

1 个答案:

答案 0 :(得分:2)

你总是重写$ data而不是附加新消息

您需要创建一个asociative数组,并且只在末尾附加消息。

之类的东西
while($data = mysql_fetch_assoc($query)){
    $array[$data['to']]['message'] .= $data['message'];
}