确认是否ssl方式连接很简单,
25端口(SMTP):25端口为SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)服务所开放的,是用于发送邮件。
465端口(SMTPS):465端口是为SMTPS(SMTP-over-SSL)协议服务开放的,这是SMTP协议基于SSL安全协议之上的一种变种协议,它继承了SSL安全协议的非对称加密的高度安全可靠性,可防止邮件泄露。SMTPS和SMTP协议一样,也是用来发送邮件的,只是更安全些,防止邮件被黑客截取泄露,还可实现邮件发送者抗抵赖功能。防止发送者发送之后删除已发邮件,拒不承认发送过这样一份邮件。
$email_common = array( 'sina.com'=>array( 'ssl' =>'0', 'pop' =>'pop.sina.com', 'pop_port' =>'110', 'smtp' =>'smtp.sina.com', 'smpt_port' =>'25', 'imap' =>'imap.sina.com', 'imap_port' =>'143', 'imap_ssl' =>'0', ), 'qq.com'=>array( 'ssl' =>'1', 'pop' =>'pop.qq.com', 'pop_port' =>'995', 'smtp' =>'smtp.qq.com', 'smpt_port' =>'465', 'imap' =>'imap.qq.com', 'imap_port' =>'143', 'imap_ssl' =>'0', ), 'gmail.com'=>array( 'ssl' =>'1', 'pop' =>'pop.gmail.com', 'pop_port' =>'995', 'smtp' =>'smtp.gmail.com', 'smpt_port' =>'465', 'imap' =>'imap.gmail.com', 'imap_port' =>'143', 'imap_ssl' =>'0', ), '126.com'=>array( 'ssl' =>'0', 'pop' =>'pop.126.com', 'pop_port' =>'110', 'smtp' =>'smtp.126.com', 'smpt_port' =>'25', 'imap' =>'imap.126.com', 'imap_port' =>'143', 'imap_ssl' =>'0', ), '163.com'=>array( 'ssl' =>'0', 'pop' =>'pop.163.com', 'pop_port' =>'110', 'smtp' =>'smtp.163.com', 'smpt_port' =>'25', 'imap' =>'imap.163.com', 'imap_port' =>'143', 'imap_ssl' =>'0', ), 'yeah.com'=>array( 'ssl' =>'0', 'pop' =>'pop.yeah.com', 'pop_port' =>'110', 'smtp' =>'smtp.yeah.com', 'smpt_port' =>'25', 'imap' =>'imap.yeah.com', 'imap_port' =>'143', 'imap_ssl' =>'0', ), 'hotmail.com'=>array( 'ssl' =>'0', 'pop' =>'pop3.live.com', 'pop_port' =>'995', 'smtp' =>'smtp.live.com', 'smpt_port' =>'25', ), 'miaohr.com'=>array( 'ssl' =>'1', 'pop' =>'pop.exmail.qq.com', 'pop_port' =>'995', 'smtp' =>'smtp.exmail.qq.com', 'smpt_port' =>'465', 'imap' =>'imap.exmail.qq.com', 'imap_port' =>'143', 'imap_ssl' =>'0', ), );
imap连接测试脚本
<?php /** * Description of CheckEmailService * * @author Administrator */ class CheckEmailService { //邮箱正确性检测 function checkEmail($mailserver,$username,$password,$serverType="imap",$port='143' ,$ssl= false) { if($serverType=='imap') { if($port=='') $port='143'; $strConnect='{'.$mailserver.':'.$port. '}INBOX'; } else { $strConnect='{'.$mailserver.':'.$port. '/pop3'.($ssl ? "/ssl" : "").'}INBOX'; } $this->server = $strConnect; $this->username = $username; $this->password = $password; if($conn = $this->connect()){ imap_close($conn); return true; }else{ return false; } } // 链接邮件服务器 function connect() //Connect To the Mail Box { if (!extension_loaded('imap')) { echo ("The PECL::imap extension is required."); return false ; } $connect=imap_open($this->server,$this->username,$this->password); if(!$connect) { return false ; } return $connect; } } ?>
$service = new CheckEmailService(); echo $service->checkEmail("imap.163.com", "test@163.com", "123456","imap","143",false);
over....