尝试检索imap结果时数组未定义的变量

时间:2014-08-09 16:54:46

标签: php codeigniter imap

所以我有一个连接到我的imap邮箱并从中获取电子邮件的功能。

public 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)
        );
    }

    $this->inbox = $in;

    return $this->inbox;
}

我正在使用codeigniter,所以上面是在一个库中,在我的控制器中我有以下内容:

$this->load->library('Email_reader');
$data['emails'] = $this->email_reader->inbox();

然后在我看来,我有以下内容,这就是我遇到问题的地方:

<?php foreach($emails as $email): ?>
   <?php echo $email->index.'<br/>'; ?>
<?php endforeach; ?>

<div class="well">
   <?php var_dump($emails); ?>
</div>

我只是想让所有变量都能很好地显示出来。但是当我运行它时,我得到的是我试图获得非对象的属性或index未定义。来自foreach的错误来自<?php echo ... ?>

var转储显示就像它应该没有错误一样。

我收到的确切错误显示在下面的屏幕截图中:我到底做错了什么?为什么这不起作用?

enter image description here

0 个答案:

没有答案