花名/ID: 天析

邮箱: 2200475850@qq.com

主攻方向: 物联网安全、WEB安全

兴趣爱好: 乒乓球、羽毛球、排球、业余无线电···

备案信息:蜀ICP备19023334号

PHP使用IMAP读取邮箱邮件内容

说明

写某项目的时候由于对方要求从邮箱中取出邮件,于是便写了下面这段代码,需要PHP开启IMAP的支持!

代码

<?php

// 邮件接收服务器配置

$mailServer       =   "imap.qq.com";         # IMAP主机
$mailServer_port  =   143;                   # IMAP端口号
$mailUser         =   "*****************";   # 邮箱用户名
$mailPass         =   "****************";    # 邮箱密码或授权码
$read_email_all   =   true;                  # 是否开启取所有邮件

//页面及时区
header('Content-type:text/json;charset=UTF-8');
date_default_timezone_set("Asia/Shanghai");

//访问IMAP
$mailLink="{{$mailServer}:143}INBOX";
$mbox = imap_open($mailLink,$mailUser,$mailPass); 

//取得信件数
$totalrows = strval(imap_num_msg($mbox));

if($read_email_all){
    for ($i = 1;$i<=$totalrows;$i++){
    
        //取出所有
        $mailBody = imap_fetchbody($mbox, $i, 1);
        $mailBody = strval(base64_decode($mailBody));
        $mailBody = strval(iconv('GB2312','UTF-8',$mailBody));
    
        //输出显示
        //echo $mailBody;

        $info = $mailBody;

        echo $info;
    }
}else{

    //只取一封
    $mailBody = imap_fetchbody($mbox, $totalrows, 1);
    $mailBody = strval(base64_decode($mailBody));
    $mailBody = strval(iconv('GB2312','UTF-8',$mailBody));

    //输出显示
    //echo $mailBody;

    $info = $mailBody;

    echo $info;

}

//关闭IMAP链接
imap_close($mbox);

?>

文章所属分类:  PHP 

« 由多网卡所造成的山石网科VPN接入端无法使用的问题 ADW CTF 新手练习区 web 思路 »