激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - PHP使用POP3讀取郵箱接收郵件的示例代碼

PHP使用POP3讀取郵箱接收郵件的示例代碼

2021-10-19 13:21crxis PHP教程

這篇文章主要介紹了PHP如何使用POP3讀取郵箱接收郵件,文中示例代碼非常詳細,幫助大家更好的理解和學習,感興趣的朋友可以了解下

直接上代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<?php
$array_values['host'] = "host";
$array_values['port'] = 110;
$array_values['user'] = '用戶名';
$array_values['password'] = '密碼';
$array_values['checkmail'] = 'xxx@xxx.xxx';
 
ganji_get_test_mail($array_values);
 
function ganji_get_test_mail($array_values)
{
  $host = $array_values['host'];
  $port = $array_values['port'];
  $user = $array_values['user'];
  $password = $array_values['password'];
  $checkmail = $array_values['checkmail'];
  $msg = '';
  $return_msg = '';
  // ini_set('memory_limit', '80M');
  if (! ($sock = fsockopen(gethostbyname($host), $port, $errno, $errstr))) {
    exit($errno . ': ' . $errstr);
  }
 
  set_socket_blocking($sock, true);
 
  $command = "USER " . $user . "\r\n";
  fwrite($sock, $command);
  $msg = fgets($sock);
  $command = "PASS " . $password . "\r\n";
  fwrite($sock, $command);
  $msg = fgets($sock);
 
  $command = "stat\r\n";
  fwrite($sock, $command);
  $return_msg = fgets($sock);
 
  $msg = fgets($sock);
 
  $command = "LIST\r\n";
  fwrite($sock, $command);
  $all_mails = array();
  while (true) {
    $msg = fgets($sock);
    if (! preg_match('/^\+OK/', $msg) && ! preg_match('/^\./', $msg)) {
      $msg = preg_replace('/\ .*\r\n/', '', $msg);
      array_push($all_mails, $msg);
    }
    if (preg_match('/^\./', $msg))
      break;
  }
 
  // 獲取郵件列表
  $ganji_mails = array();
  foreach ($all_mails as $item) {
    fwrite($sock, "TOP $item 0\r\n");
    while (true) {
      $msg = fgets($sock);
      // echo $msg . "<Br><Br>";
      if (preg_match('/^\./', $msg)) {
        array_push($ganji_mails, $item);
        break;
      }
    }
    continue;
  }
 
  $mail_content = '';
  $array_ganji_mails = array();
 
  //逐行遍歷
  foreach ($ganji_mails as $item) {
    fwrite($sock, "RETR $item\r\n");
    while (true) {
      $msg = fgets($sock);
      $mail_content .= $msg;
      if (preg_match('/^\./', $msg)) {
        array_push($array_ganji_mails, iconv_mime_decode_headers($mail_content, 0, "UTF-8"));
        $mail_content = '';
        break;
      }
    }
  }
 
  // 直接獲取第一封郵件全部信息 9999長度
  fwrite($sock, "RETR 1\r\n");
  $mail_contents = fread($sock, 9999); // 直接獲取全部
 
  echo "<br>";
  var_dump($mail_contents);
  echo "<br>";
 
  $command = "QUIT\r\n";
  fwrite($sock, $command);
  $msg = fgets($sock);
 
  return $mail_contents;
}

常用的POP3命令介紹 :

命令 參數 狀態 描述
USER username 認可 此命令與下面的pass命令若成功,將導致狀態轉換
PASS password  認可  
APOP Name,Digest 認可 Digest是MD5消息摘要
STAT None 處理 請求服務器發回關于郵箱的統計資料,如郵件總數和總字節數
UIDL [Msg#] 處理 返回郵件的唯一標識符,POP3會話的每個標識符都將是唯一的
LIST [Msg#] 處理 返回郵件數量和每個郵件的大小
RETR [Msg#] 處理 返回由參數標識的郵件的全部文本
DELE [Msg#] 處理 服務器將由參數標識的郵件標記為刪除,由quit命令執行
RSET None 處理 服務器將重置所有標記為刪除的郵件,用于撤消DELE命令
TOP [Msg#]  處理 服務器將返回由參數標識的郵件前n行內容,n必須是正整數
NOOP None 處理 服務器返回一個肯定的響應,不做任何操作。
QUIT None 更新 退出

以上就是PHP使用POP3讀取郵箱接收郵件的示例代碼的詳細內容,更多關于PHP讀取郵箱接收郵件的資料請關注服務器之家其它相關文章!

原文鏈接:https://www.cnblogs.com/crxis/p/12844850.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 韩国一级免费视频 | 亚洲一区二区观看播放 | 18欧美性xxxx极品hd | 黄色片网站免费观看 | 欧美国产免费 | 一区二区美女视频 | 一区播放 | 国产欧美在线观看不卡一 | 在线观看免费精品 | 羞羞的动漫在线观看 | 一级电影在线观看 | 成人一区二区三区四区 | 羞羞草视频| 日本一级淫片1000部 | 蜜桃91麻豆 | 黄片毛片一级 | 一级视频片 | 欧美激情精品久久久久 | 久久精品一区二区三区四区五区 | 在线亚洲欧美 | 欧美亚洲一级 | 92看片淫黄大片一级 | 免费黄色欧美视频 | 成年性羞羞视频免费观看无限 | 欧美扩阴视频 | 午夜视频在线 | 久久老司机精品视频 | 亚洲一区二区三区在线播放 | 夜夜夜影院 | 国产一区二区三区在线免费 | 91九色视频 | 一级外国毛片 | 男女无套免费视频 | 国产九色视频在线观看 | 国产成人精品免高潮在线观看 | 九九热在线精品视频 | 国产超碰人人爽人人做人人爱 | 日本在线一区二区 | 1级黄色毛片 | 19禁国产精品福利视频 | av在线播放地址 |