【问题标题】:Create a Multidimensional Array with Codeigniter and MySQL使用 Codeigniter 和 MySQL 创建多维数组
【发布时间】:2014-06-06 11:49:55
【问题描述】:

我正在使用 codeigniter 开发内部邮件系统,一切都像 gmail 邮件系统一样完美完成,除了回复。

在这里,我想在单个邮件中显示已回复的消息和当前消息(如果邮件已回复),例如 gmail。

假设我有线程表,它与表消息有一对多的关系。

线程

thread_id | msg_id |发件人 ID |发件人角色 |接收者 ID | 接收者角色 |状态

消息

标识 |主题 |身体 |日期

上面的表格可以很好地显示收件箱和已发送的邮件。

但现在我想显示回复的消息以及原始消息。(如 gmail)。

为此,我打算更改线程表的结构(添加另外两个字段reply-0 或1,reply_id)

选择 subject , body , cdate , sender_id , username AS 电子邮件,lbs_mails.id AS mail_id,statussender_role, thread_id FROM (lbs_mails) 加入lbs_threads ON lbs_threads.msg_id = lbs_mails.id 加入 lbs_auth 开启 lbs_auth.uid = lbs_threads.sender_id AND 角色 = lbs_threads.sender_role WHERE lbs_threads.receiver_role = '3' 和lbs_threads.receiver_id = '1'

检索数据的一种有效方法是创建一个多维数组,例如:

$inbox = array(
            [subject] => reply to Test Mail
            [body] => reply to Test Mail
            [cdate] => 2014-04-22 17:56:42
            [sender_id] => 2
            [email] => email@email.com
            [mail_id] => 7
            [status] => 1
            [sender_role] => 2
            [reply_id] => array(
                [subject] => reply to Test Mail
                [body] => reply to Test Mail
                [cdate] => 2014-04-22 17:56:42
            )
        )

我怎样才能做到这一点,任何人都可以帮助我。 谢谢!

【问题讨论】:

    标签: php mysql arrays codeigniter


    【解决方案1】:

    我认为最简单的选择是对消息进行一次数据库调用,然后进行第二次数据库调用以检索相关的回复数据。然后简单地查看数据并将其组合成一个数组。

    【讨论】:

      猜你喜欢
      • 2013-09-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-01
      • 2015-12-04
      • 1970-01-01
      相关资源
      最近更新 更多