国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁(yè) > 編程 > PHP > 正文

php開(kāi)發(fā)SMTP傳輸SMTP類發(fā)送郵件方法(1)

2020-03-22 20:31:06
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
  • <?phpdefine('SMTP_STATUS_NOT_CONNECTED', 1, TRUE);define('SMTP_STATUS_CONNECTED', 2, TRUE);html' target='_blank'>class p8_smtp{    var $connection;    var $recipients;    var $headers;    var $timeout;    var $errors;    var $status;    var $body;    var $from;    var $host;    var $port;    var $helo;    var $auth;    var $user;    var $pass;        /**     *  參數(shù)為一個(gè)數(shù)組     *  host        SMTP 服務(wù)器的主機(jī)       默認(rèn):localhost     *  port        SMTP 服務(wù)器的端口       默認(rèn):25     *  helo        發(fā)送HELO命令的名稱      默認(rèn):localhost     *  user        SMTP 服務(wù)器的用戶名     默認(rèn):空值     *  pass        SMTP 服務(wù)器的登陸密碼   默認(rèn):空值     *  timeout     連接超時(shí)的時(shí)間          默認(rèn):5     *  @return  bool     */        function p8_smtp($params = array())    {        if(!defined('CRLF')) define('CRLF', "/r/n", TRUE);                $this->timeout  = 5;        $this->status   = SMTP_STATUS_NOT_CONNECTED;        $this->host     = 'localhost';        $this->port     = 25;        $this->auth     = FALSE;        $this->user     = '';        $this->pass     = '';        $this->errors   = array();        foreach($params as $key => $value)        {            $this->$key = $value;        }                $this->helo     = $this->host;        //  如果沒(méi)有設(shè)置用戶名則不驗(yàn)證                $this->auth = ('' == $this->user) ? FALSE : TRUE;    }    function connect($params = array())    {        if(!isset($this->status))        {            $obj = new p8_smtp($params);                        if($obj->connect())            {                $obj->status = SMTP_STATUS_CONNECTED;            }            return $obj;        }        else        {                        $this->connection = fsockopen($this->host, $this->port, $errno, $errstr, $this->timeout);            socket_set_timeout($this->connection, 0, 250000);            $greeting = $this->get_data();                        if(is_resource($this->connection))            {                $this->status = 2;                return $this->auth ? $this->ehlo() : $this->helo();            }            else            {                $this->errors[] = 'Failed to connect to server: '.$errstr;                return FALSE;            }        }    }        /**     * 參數(shù)為數(shù)組     * recipients      接收人的數(shù)組     * from            發(fā)件人的地址,也將作為回復(fù)地址     * headers         頭部信息的數(shù)組     * body            郵件的主體     * www.it165.net     */        function send($params = array())    {        foreach($params as $key => $value)        {            $this->set($key, $value);        }        if($this->is_connected())        {            //  服務(wù)器是否需要驗(yàn)證                 if($this->auth)            {                if(!$this->auth()) return FALSE;            }            $this->mail($this->from);            if(is_array($this->recipients))            {                foreach($this->recipients as $value)                {                    $this->rcpt($value);                }            }            else            {                $this->rcpt($this->recipients);            }            if(!$this->data()) return FALSE;            $headers = str_replace(CRLF.'.', CRLF.'..', trim(implode(CRLF, $this->headers)));            $body    = str_replace(CRLF.'.', CRLF.'..', $this->body);            $body    = $body[0] == '.' ? '.'.$body : $body;            $this->send_data($headers);            $this->send_data('');            $this->send_data($body);            $this->send_data('.');            return (substr(trim($this->get_data()), 0, 3) === '250');        }        else        {            $this->errors[] = 'Not connected!';            return FALSE;        }    }        function helo()    {        if(is_resource($this->connection)                AND $this->send_data('HELO '.$this->helo)                AND substr(trim($error = $this->get_data()), 0, 3) === '250' )        {            return TRUE;        }        else        {            $this->errors[] = 'HELO command failed, output: ' . trim(substr(trim($error),3));            return FALSE;        }    }            function ehlo()    {        if(is_resource($this->connection)                AND $this->send_data('EHLO '.$this->helo)                AND substr(trim($error = $this->get_data()), 0, 3) === '250' )        {            return TRUE;        }        else        {            $this->errors[] = 'EHLO command failed, output: ' . trim(substr(trim($error),3));            return FALSE;        }    }        function auth()    {        if(is_resource($this->connection)                AND $this->send_data('AUTH LOGIN')                AND substr(trim($error = $this->get_data()), 0, 3) === '334'                AND $this->send_data(base64_encode($this->user))            // Send username                AND substr(trim($error = $this->get_data()),0,3) === '334'                AND $this->send_data(base64_encode($this->pass))            // Send password                AND substr(trim($error = $this->get_data()),0,3) === '235' )        {            return TRUE;        }        else        {            $this->errors[] = 'AUTH command failed: ' . trim(substr(trim($error),3));            return FALSE;        }    }        function mail($from)    {        if($this->is_connected()            AND $this->send_data('MAIL FROM:<'.$from.'>')            AND substr(trim($this->get_data()), 0, 2) === '250' )        {            return TRUE;        }        else        {            return FALSE;        }    }    function rcpt($to)    {        if($this->is_connected()            AND $this->send_data('RCPT TO:<'.$to.'>')            AND substr(trim($error = $this->get_data()), 0, 2) === '25' )        {            return TRUE;        }        else        {            $this->errors[] = trim(substr(trim($error), 3));            return FALSE;        }    }    function data()    {        if($this->is_connected()            AND $this->send_data('DATA')            AND substr(trim($error = $this->get_data()), 0, 3) === '354' )        {             return TRUE;        }        else        {            $this->errors[] = trim(substr(trim($error), 3));            return FALSE;        }    }    function is_connected()    {        return (is_resource($this->connection) AND ($this->status === SMTP_STATUS_CONNECTED));    }    function send_data($data)    {        if(is_resource($this->connection))        {            return fwrite($this->connection, $data.CRLF, strlen($data)+2);        }        else        {            return FALSE;        }    }    function &get_data()    {        $return = '';        $line   = '';        if(is_resource($this->connection))        {            while(strpos($return, CRLF) === FALSE OR substr($line,3,1) !== ' ')            {                $line    = fgets($this->connection, 512);                $return .= $line;            }            return $return;        }        else        {            return FALSE;        }    }    function set($var, $value)    {        $this->$var = $value;        return TRUE;    }} // End of classclass smtp{	var $debug;	var $host;	var $port;	var $auth;	var $user;	var $pass;	function smtp($host = "", $port = 25,$auth = false,$user,$pass){		$this->host=$host;		$this->port=$port;		$this->auth=$auth;		$this->user=$user;		$this->pass=$pass;	}	function sendmail($to,$from, $subject, $content, $T=0){		global $webdb;		//$name, $email, $subject, $content, $type=0		$type=1;		$name=array("{$webdb[webname]}會(huì)員");		$email=array($to);		$_CFG['smtp_host']= $this->host;		$_CFG['smtp_port']= $this->port;		$_CFG['smtp_user']= $this->user;		$_CFG['smtp_pass']= $this->pass;		$_CFG['name']= $webdb[webname];		$_CFG['smtp_mail']= $from;		//$name = "=?UTF-8?B?".base64_encode($name)."==?=";		$subject = "=?gbk?B?".base64_encode($subject)."==?=";		$content = base64_encode($content);		$headers[] = "To:=?gbk?B?".base64_encode($name[0])."?= <$email[0]>";		$headers[] = "From:=?gbk?B?".base64_encode($_CFG[name])."?= <$_CFG[smtp_mail]>";		$headers[] = "MIME-Version: Blueidea v1.0";		$headers[] = "X-Mailer: 9gongyu Mailer v1.0";		//$headers[] = "From:=?UTF-8?B?".base64_encode($_CFG['shop_name'])."==?=<$_CFG[smtp_mail]>";		$headers[] = "Subject:$subject";		$headers[] = ($type == 0) ? "Content-Type: text/plain; charset=gbk; format=flowed" : "Content-Type: text/html; charset=gbk; format=flowed";		$headers[] = "Content-Transfer-Encoding: base64";		$headers[] = "Content-Disposition: inline";		//    SMTP 服務(wù)器信息		$params['host'] = $_CFG['smtp_host'];		$params['port'] = $_CFG['smtp_port'];		$params['user'] = $_CFG['smtp_user'];		$params['pass'] = $_CFG['smtp_pass'];		if (empty($params['host']) || empty($params['port']))		{			// 如果沒(méi)有設(shè)置主機(jī)和端口直接返回 false			return false;		}		else		{			//  發(fā)送郵件			$send_params['recipients']    = $email;			$send_params['headers']        = $headers;			$send_params['from']        = $_CFG['smtp_mail'];			$send_params['body']        = $content;			/*        			echo "<pre>";			print_r($params);			print_r($send_params);			echo "</pre>";			exit;			*/			$smtp = new p8_smtp($params);			if($smtp->connect() AND $smtp->send($send_params))			{				return TRUE;			}			else 			{				return FALSE;			} // end if		}	}}?>

    PHP編程

    鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

  • 發(fā)表評(píng)論 共有條評(píng)論
    用戶名: 密碼:
    驗(yàn)證碼: 匿名發(fā)表
    国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
    欧美色第一页| 亚洲伊人网在线观看| www.成人.com| 日本a级黄色| 欧美日韩在线中文字幕| 久热中文字幕精品视频在线| 麻豆精品免费视频入口| 久草视频国产| 国产成人久久精品77777| 在线观看av网站永久| 欧美日韩在线中文字幕| 五月天天在线| 国产美女被草| 精品欧美不卡一区二区在线观看| av高清资源| 午夜在线小视频| 欧美日韩亚洲第一页| 国产人成精品| 另类专区欧美| 在线播放黄色网址| 最新天堂资源在线资源| 精品久久久久一区二区三区| 玖玖在线视频| av人人综合网| 97高清视频| 国产有码在线| 久热精品免费视频| 国产精品99999| 国产在线麻豆精品| av网址在线免费观看| 中文字幕高清av| www.xxx黄| 在线午夜视频| av首页在线| 影音av资源站| av在线你懂的| wwww亚洲| 九九热在线免费视频| 日本在线免费中文字幕| 亚洲成人福利| av在线电影观看| 四虎成人欧美精品在永久在线| 尤物视频免费在线观看| 黄色国产网站在线观看| 青青青国产视频| 日本在线天堂| 黄色国产网站在线观看| 成年网在线观看免费观看网址| www.91在线播放| 免费在线看v| 黄色网址在线免费播放| 国产美女被草| 中文字幕在线影院| 国产色a在线| 精品美女在线观看视频在线观看| 国产高清av| 一区二区免费播放| 999在线视频| 在线成人综合色一区| 精品a在线观看| 欧美日韩在线视频免费观看| 九九热视频在线观看| 国产伦精品一区二区三区高清版禁| 激情五月色综合亚洲小说| 最近中文字幕在线中文视频| 国产娇喘精品一区二区三区图片| 国产黄色在线网站| 午夜影院在线| 国产精品区一区二| 天海翼中文字幕| 国产视频精选在线| 99热国产在线| 成年女人在线视频| 国产wwww| 最近中文字幕mv免费高清电影| 99久久免费精品国产免费| 麻豆视频国产| 国产黄色免费网| 激情亚洲综合网| 亚洲精品国自产拍在线观看| 99视频在线观看地址| 亚洲电影视频在线| 精品精品导航| 国产高清自拍视频在线观看| 狂野欧美性猛交xxxx乱大交| 97视频在线观看网站| 国产卡1卡2卡三卡在线| 在线观看精品视频一区二区三区| 青青草视频免费在线观看| 91欧美在线视频| 国产va在线| 尤物视频在线看| 欧美日韩亚洲第一页| 中文字幕2019第三页| 国产一二三区精品视频| 黄网在线免费| 九色成人在线| 超碰在线97国产| 久久一本精品| 久久香蕉一区| 超碰国产在线| 国产男女无套在线播放| 日本欧洲一区| 香蕉视频网站在线观看| 在线观看免费视频一区二区三区| 国产黄色在线网站| 国产精品剧情一区二区在线观看 | gogo在线高清视频| av手机免费在线观看| a√在线视频| 日韩亚洲一区中文字幕| 免费日本黄色| 国产一区二区在线|播放| 国产网站麻豆精品视频| 国产无套粉嫩白浆在线2022年 | 国产高潮又爽又无遮挡又免费| 国产精品一区二区三区四区色 | 久热国产在线视频| 豆国产97在线|亚洲| 国产午夜在线视频| 国产福利在线播放麻豆| 亚洲国产aⅴ精品| 国产精品自产拍在线观看2019| 国产精品伦一区二区三区视频 | 精品国产高清a毛片无毒不卡| 在线中文字幕视频观看| 快射av在线播放一区| 国产私人尤物无码不卡| 尤物视频在线观看视频| 二区中文字幕| 中文岛国精品亚洲一区| 丁香花视频在线观看| 97最新国自产拍视频在线完整在线看 | 国产美女福利在线| 国产传媒在线播放| 国产女人在线观看| 在线国产网址| 国产叼嘿网站免费观看不用充会员| av中文在线| 91视频黄色| 国产无遮挡又黄又爽免费网站 | 国产美女在线免费观看| 在线一区二区三区精品| 国产探花在线观看| 久草在线资源福利| 天天插天天狠天天透| 国产不卡精品一区二区三区| 国产美女高潮一区二区三区| 女人色在线免费视频| 午夜在线观看91| 在线观看av网站| av大片在线播放| 国产成人精品自线拍| 国产精选在线观看| 九色精品视频在线观看| 牛牛在线精品视频| 欧美日韩一区二区三区视视频| 在线观看中文字幕| 99久久国产视频| 精品一二三四| 在线亚洲电影| 99久热re在线精彩视频| 精品乱码一区二区三四区视频| 国产高清一级片| 中文天堂av| av中文资源在线| 欧美专区日韩| 天天操人人干| 国产精品美女一区二区视频| 96久久久久久| 免费午夜一级| 天堂亚洲精品| 2019天天操夜夜操| 天堂中文在线观看| 国产免费黄网站| 中文字幕有码在线视频| 国产欧美日韩专区| 在线视频观看你懂的| xxxx视频在线| 国产一卡二卡3卡4卡四卡在线| 国产日韩欧美一区二区三区视频| 2019中文字幕在线电影免费| 羞羞视频在线免费看| 国产精品自产拍在线观看2019| 国产黄色网页| 久草在线资源福利| 999福利在线视频| 青青青国产视频| 国产精彩视频在线观看免费蜜芽| 影音先锋中文字幕在线| 激情亚洲综合网| 国产激情三区| 国产美女高潮一区二区三区| 精品精品导航| 国产香蕉在线| 成人日韩欧美| 激情六月丁香| 牛牛精品视频在线| 91亚洲天堂| 国产亚洲精品一区二区在线观看 |