首页 > 作文

PHP使用POP3读取邮箱接收邮件

更新时间:2023-04-08 13:58:28 阅读: 评论:0

 1 <?php 2 $array_values['host'] = "host"; 3 $array_values['port'] = 110; 4 $array_values['ur'] = '用户名'; 5 $array_values['password'] = '密码'; 6 $array_values['checkmail'] = 'xxx@xxx.xxx'; 7   8 ganji_get_test_mail($array_values); 9  10 function ganji_get_test_mail($array_values)11 {12     $host = $array_values['host'];13     $port = $array_values['port'];14     $ur = $array_values['ur'];15     $password = $array_values['password'];16     $checkmail = $array_values['checkmail'];17     $msg = '';18     $return_msg = '';19     // ini_t('memory_limit', '80m');20     if (! ($sock = fsockopen(gethostbyname($host), $port, $errno, $errstr))) {21         exit($errno . ': ' . $errstr);22     }23     24     t_socket_blocking($sock, true);25     26     $command = "ur " . $ur . "\r\n";27     fwrite($sock, $command);28 无线漏油器    $msg = fgets($sock);29     $command = "pass " . $password . "\r\n";30     fwrite($sock, $command);31     $msg = fgets($sock);32     33     $command = "stat\r\n";34     fwrite($sock, $command);35     $return_msg = fgets($sock);36     37     $msg = fgets($sock);38     39     $command = "list\r\n";40     fwrite($sock, $command);41     $all_mails = array();42     while (true) {43         $msg = fgets($sock);44         if (! preg_match('/^\+ok/', $msg) && ! preg_match('/^\./', $msg)) {45             $msg = preg_replace('/\ .*\r\n/', '', $msg);46             array_push($all_mails, $msg);47         }48         if (preg_match('/^\./', $msg))49          惊蛰代表的什么精神   break;50     }51     52     // 获取邮件列表53     $ganji_mails = array();54     foreach ($all_mails as $item) {55         fwrite($sock, "top $item 0\r\n");56         while (true) {57             $msg = fgets($sock);58             // echo $msg . "<br><br>";59             if (preg_match('/^\./', $msg)) {60                 array_push($ganji_mails, $item);61                 break;62             }63         }64         continue;65     }66     67     $mail_content = '';68     $array_ganji_mails = array();69     70 羽毛球单打规则    //逐行遍历71     foreach ($ganji_mails as $item) {72         fwrite($sock, "retr $item\r\n");73         while (true) {74             $msg = fgets($sock);75             $mail_content .= $msg;76             if (preg_match('/^\./', $msg)) {77                 array_push($array_ganji_mails, iconv_mime_decode_headers($mail_content, 0, "utf-8"));78                 $mail_content = '';79            观察的名言     break;80             }81         }82     }83     84     // 直接获取第一封邮件全部信息 9999长度85     fwrite($sock, "retr 1\r\n");86     $mail_contents = fread($sock, 9999); // 直接获取全部87     88     echo "<br>";描写日出89     var_dump($mail_contents);90     echo "<br>";91     92     $command = "quit\r\n";93     fwrite($sock, $command);94     $msg = fgets($sock);95     96     return $mail_contents;97 }

常用的pop3命令介绍 :

命令    参数    状态    描述

——————————————

ur    urname  认可    此命令与下面的pass命令若成功,将导致状态转换

pass    password  认可

apop    name,digest 认可    digest是md5消息摘要

——————————————

stat    none    处理    请求服务器发回关于邮箱的统计资料,如邮件总数和总字节数

uidl    [msg#]   处理    返回邮件的唯一标识符,pop3会话的每个标识符都将是唯一的

list    [msg#]   处理    返回邮件数量和每个邮件的大小

retr    [msg#]   处理    返回由参数标识的邮件的全部文本

dele    [msg#]   处理    服务器将由参数标识的邮件标记为删除,由quit命令执行

rt    none    处理    服务器将重置所有标记为删除的邮件,用于撤消dele命令

top    [msg#]    处理    服务器将返回由参数标识的邮件前n行内容,n必须是正整数

noop    none    处理    服务器返回一个肯定的响应,不做任何操作。

——————————————

quit    none    更新 退出
————————————————

本文发布于:2023-04-08 13:58:26,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/ba72730157eb380e489dfa920f8c706f.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:PHP使用POP3读取邮箱接收邮件.doc

本文 PDF 下载地址:PHP使用POP3读取邮箱接收邮件.pdf

下一篇:返回列表
标签:邮件   命令   服务器   参数
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图