PHP库读取电子邮件
发布时间:2020-12-13 18:21:20 所属栏目:PHP教程 来源:网络整理
导读:我目前使用 SwiftMailer库发送电子邮件,但不幸的是它仅用于发送,而不是接收.我想知道…是否有类似的库通过IMAP连接到电子邮件帐户并阅读电子邮件(IE让我能够循环通过电子邮件).我知道这里有一组 PHP IMAP函数: http://us3.php.net/manual/en/book.imap.php
我目前使用
SwiftMailer库发送电子邮件,但不幸的是它仅用于发送,而不是接收.我想知道…是否有类似的库通过IMAP连接到电子邮件帐户并阅读电子邮件(IE让我能够循环通过电子邮件).我知道这里有一组
PHP IMAP函数:
http://us3.php.net/manual/en/book.imap.php
但我的问题是,是否有人知道用于接收/查看所有电子邮件的替代图书馆或IMAP包装类? 事先谢谢,我真的找不到任何东西.
见下面你的: –
http://www.php.net/mailparse http://garrettstjohn.com/entry/reading-emails-with-php/ 或试试: – 用PHP阅读电子邮件 <?php class Email_reader { // imap server connection public $conn; // inbox storage and inbox message count private $inbox; private $msg_cnt; // email login credentials private $server = 'yourserver.com'; private $user = 'email@yourserver.com'; private $pass = 'yourpassword'; private $port = 143; // adjust according to server settings // connect to the server and get the inbox emails function __construct() { $this->connect(); $this->inbox(); } // close the server connection function close() { $this->inbox = array(); $this->msg_cnt = 0; imap_close($this->conn); } // open the server connection // the imap_open function parameters will need to be changed for the particular server // these are laid out to connect to a Dreamhost IMAP server function connect() { $this->conn = imap_open('{'.$this->server.'/notls}',$this->user,$this->pass); } // move the message to a new folder function move($msg_index,$folder='INBOX.Processed') { // move on server imap_mail_move($this->conn,$msg_index,$folder); imap_expunge($this->conn); // re-read the inbox $this->inbox(); } // get a specific message (1 = first email,2 = second email,etc.) function get($msg_index=NULL) { if (count($this->inbox) <= 0) { return array(); } elseif ( ! is_null($msg_index) && isset($this->inbox[$msg_index])) { return $this->inbox[$msg_index]; } return $this->inbox[0]; } // read the inbox 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,'structure' => imap_fetchstructure($this->conn,$i) ); } $this->inbox = $in; } } ?> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |