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