确认是否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....