chengkun
2025-05-22 3b321a2882db082c68aaf8771e0f55daa58a63d3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<?php
 
 
require_once 'aliyunemail/aliyun-php-sdk-core/Config.php';
use Dm\Request\V20151123 as Dm;
 
class aliyun_sendemail 
{  
    public $accesskey;  //accessKey 
    public $accesssecret;  //accessSecret 
    public $accountname;  //控制台创建的发信地址 
    public $fromalias;  //发信人昵称
    public $tagname;  //控制台创建的标签 
 
    public function __construct($accesskey,$accesssecret,$accountname,$fromalias,$tagname=null){
        $this->accesskey = $accesskey;
        $this->accesssecret = $accesssecret;
        $this->accountname = $accountname;
        $this->fromalias = $fromalias;
        $this->tagname = $tagname;
    }
   
    public function sendemail($email, $title, $content)  
    {  
        
        //获取配置信息  
        $region = 'cn-hangzhou';  
        $accessKey = $this->accesskey;  
        $accessSecret = $this->accesssecret;  
        $accountName = $this->accountname;  
        $fromAlias = $this->fromalias;  
        $tagName = $this->tagname; 
        $iClientProfile = DefaultProfile::getProfile($region, $accessKey,$accessSecret);  
        //发送单个邮件示例  
        $client = new DefaultAcsClient($iClientProfile); 
 
        $request = new Dm\SingleSendMailRequest(); 
        $request->setAccountName($accountName);  
        $request->setFromAlias($fromAlias);  
        $request->setAddressType(1);  
        $request->setTagName($tagName);  
        $request->setReplyToAddress("false");  
        //收件人  
        $request->setToAddress($email);   
        //发信标题       
        $request->setSubject($title);  
           
        //发信内容  
        $request->setHtmlBody($content);       
         
        try {  
            $response = $client->getAcsResponse($request);  
            if ($response) {  
                return $response;  
            }  
        } catch (ClientException  $e) {  
            return $e->getErrorMessage();
        } catch (ServerException  $e) {   
            return $e->getErrorMessage();
        }  
    }
}  
?>