| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176 | <?phpdefine('MAIL_SMTP','smtp.qq.com'); 		// 邮箱SMTP服务器define('MAIL_ADDRESS','hr.internal@oasgames.com'); 	// 邮箱地址define('MAIL_LOGINNAME','hr.internal@oasgames.com'); // 邮箱登录帐号define('MAIL_PASSWORD','oashr2013'); 		define('MAIL_FROM_NAME','OASIS GAMES HR'); 		 //发送邮件function SendMail($address,$title,$message,$ReplyTo_Addr="noreply@oasgame.com",$ReplyTo_Name="OASIS Games", $service='amazon'){		if($service=='amazon'){		return OASMailer::SendMail_WithAmazon($address,$title,$message);	}	else{		return OASMailer::SendMail_TS($address,$title,$message,$ReplyTo_Addr,$ReplyTo_Name);	}}class OASMailer{	public static $phpMailer;	public static $sendErrResult;		public static function SendMail_TS($address,$title,$message,$ReplyTo_Addr="noreply@oasgame.com",$ReplyTo_Name="OASIS Games"){		if(empty($phpMailer)){			require_once(dirname(__FILE__) . '/PHPMailer/class.phpmailer.php');			self::$phpMailer = new PHPMailer();		}			    $mail = self::$phpMailer;		    // Telling the class to use SendMail transport		$mail->IsSendmail(); 	    // 开启HTML标签的支持		$mail->IsHTML(true);	    // 设置邮件的字符编码,若不指定,则为'UTF-8'	    $mail->CharSet  = 'UTF-8';				$mail->AddReplyTo($ReplyTo_Addr,$ReplyTo_Name);				$mail->SetFrom($ReplyTo_Addr, $ReplyTo_Name);				$mail->AddAddress($address,"");				$mail->Subject    = $title;				//$mail->AltBody  = "To view the message, please use an HTML compatible email viewer!";		$mail->MsgHTML($message);				return $mail->Send();   	}		public static function SendMail_WithAmazon($address,$subject,$message){				require_once(dirname(__FILE__) . '/amazon/ses.php');				$_MAIL_FROM_ADDR     = 'noreply@oasgame.com';		$_AMAZON_ACCESS_KEY  = 'AKIAIMVZOFS3LDK3W2VQ';		$_AMAZON_SECRET_KEY  = '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';				$ses    = new SimpleEmailService($_AMAZON_ACCESS_KEY, $_AMAZON_SECRET_KEY);		$ses_m  = new SimpleEmailServiceMessage();			$ses_m->setFrom($_MAIL_FROM_ADDR);		$ses_m->addTo($address);		$ses_m->setSubject($subject);		$ses_m->setMessageFromString('',$message);		$ses_m->setMessageCharset('utf-8');		$result = $ses->sendEmail($ses_m);		if(is_array($result) && !empty($result['MessageId'])){			return true;		}		else{			self::$sendErrResult = $result;			return false;				}	}		public static function SendMail_WithMailgun($address,$subject,$message,$mailFrom='noreply@oasgames.com'){				$apiUrl = 'https://api.mailgun.net/v2/oasgame.com/messages';		$auth   = base64_encode('api:key-3sduhyatml4t7t5dp-1g6hhvhx72ll22');				$reqHeader = array(			'Authorization:Basic '.$auth,			"Content-Type: application/x-www-form-urlencoded"		);				$postData  = array(			'from'    => $mailFrom,		    'to'      => $address,            'subject' => $subject,		    'html' 	  => $message		);				return self::curlRequest($apiUrl,$postData,$reqHeader,10);			}		private static function curlRequest($url,$postData='',$headerFields,$timeout=3){				$curl = curl_init(); 				curl_setopt($curl, CURLOPT_URL, $url); 		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); 		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1);		curl_setopt($curl, CURLOPT_AUTOREFERER, 1); 		curl_setopt($curl, CURLOPT_HTTPHEADER, $headerFields); 		curl_setopt($curl, CURLOPT_TIMEOUT, $timeout); 		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 				if(!empty($postData)){			curl_setopt($curl, CURLOPT_POST, 1); 			curl_setopt($curl, CURLOPT_POSTFIELDS,http_build_query($postData)); 		}				$resultData = curl_exec($curl);		$httpInfo   = curl_getinfo($curl);				curl_close($curl);		return $resultData;			}	 //发送邮件	public static function SendMail_OAS_SMTP($address,$title,$message,$fromName=MAIL_FROM_NAME)	{				if(empty($phpMailer)){			require_once(dirname(__FILE__) . '/PHPMailer/class.phpmailer.php');			self::$phpMailer = new PHPMailer();		}			    $mail = self::$phpMailer;	    	    // 设置PHPMailer使用SMTP服务器发送Email	    $mail->IsSMTP();	    // 开启HTML标签的支持		$mail->IsHTML(true);		    // 设置邮件的字符编码,若不指定,则为'UTF-8'	    $mail->CharSet  = 'UTF-8';	    // 设置为"需要验证"	    $mail->SMTPAuth = true;	    //		$mail->Port     = 25;   	    // 设置SMTP服务器。	    $mail->Host     = MAIL_SMTP;	    // 设置用户名和密码。	    $mail->Username = MAIL_LOGINNAME;	    //	    $mail->Password = MAIL_PASSWORD;		    // 设置邮件头的From字段。	    $mail->From     = MAIL_ADDRESS;	    // 设置发件人名字	    $mail->FromName = $fromName;		    // 添加收件人地址,可以多次使用来添加多个收件人	    foreach(explode(";",$address) as $address_this){	    	$mail->AddAddress($address_this);	    }	    // 设置邮件标题	    $mail->Subject  = $title;	    // 设置邮件正文	    $mail->Body     = $message;	    // 发送邮件。	    return $mail->Send();	}		}// class end
 |