无法通过php从headerinfo获取主题

时间:2017-08-07 19:14:37

标签: php

出于某种原因,我无法收到电子邮件的主题。那么实际上一个主题会回响,但只有一个,而不是其余的。我尝试过类似的其他主题的解决方案,但没有一个有效。提前致谢。我的代码如下。

     function inbox() {

        $this->msg_cnt = imap_num_msg($this->conn);

        $in = array();
        for($i = 1; $i <= $this->msg_cnt; $i++) {
            $in[] = array(
                'index'     => $i,
                'header'    => imap_headerinfo($this->conn, $i),
                'body'      => imap_body($this->conn, $i),
                'structure' => imap_fetchstructure($this->conn, $i)
            );
            if(property_exists($this->inbox[$i]['header'], 'subject')){
                $header = $this->inbox[$i]['header'];
                $subject = $header->subject;
                echo $subject;
        }

        $this->inbox = $in;

    }
}

1 个答案:

答案 0 :(得分:1)

这只是一个猜测,但我会假设您正在制作$ in数组是有原因的。然后你忽略了使用$ in。

以下是我认为您打算做的事情:

function inbox() {

    $this->msg_cnt = imap_num_msg($this->conn);

    $in = array();
    for($i = 1; $i <= $this->msg_cnt; $i++) {
        $in[$i] = array(
            'index'     => $i,
            'header'    => imap_headerinfo($this->conn, $i),
            'body'      => imap_body($this->conn, $i),
            'structure' => imap_fetchstructure($this->conn, $i)
        );
        if(property_exists($in[$i]['header'], 'subject')){
            $header = $in[$i]['header'];
            $subject = $header->subject;
            echo $subject;
        }

    }
    $this->inbox = $in;
}