Skip to content

Commit db3f30c

Browse files
committed
ad
1 parent 143a460 commit db3f30c

File tree

3 files changed

+96
-14
lines changed

3 files changed

+96
-14
lines changed

readme.md

+58
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
### php-sent-email
2+
3+
php利用smtp发送邮件
4+
5+
发邮件类使用 [PHPMailer](https://github.com/PHPMailer/PHPMailer) ,自己只是简单封装了下
6+
7+
#### 示例代码
8+
9+
```php
10+
<?php
11+
12+
require_once 'vendor/autoload.php';
13+
14+
use niklaslu\Mail;
15+
16+
$mailConfig = [
17+
'debug' => false, // 是否开启debug,调试模式下可开启
18+
'host' => 'smtp.??????.???', // 邮件发送smtp服务器host
19+
'username' => '[email protected]', // 用户名
20+
'password' => '**********', // 密码
21+
'port' => 465, // 端口号
22+
// 发送人
23+
'from' =>[
24+
'address' => '[email protected]',
25+
'name' => 'from_name'
26+
],
27+
// 'from' => '[email protected]',
28+
29+
];
30+
31+
$mail = new Mail($mailConfig);
32+
33+
// 添加回复人
34+
// $mail->addReplyTo('[email protected]' , 'reply_name');
35+
// 添加抄送,多人
36+
$CC = [
37+
['[email protected]' , 'cc1'],
38+
['[email protected]' , 'cc2']
39+
];
40+
// $mail->addCC($CC);
41+
// 添加密送
42+
// $BCC = $CC;
43+
// $mail->addBCC($BCC);
44+
45+
46+
$to = '[email protected]'; // 发送人
47+
$subject = '测试标题'; // 邮件标题
48+
$body = "<p>测试内容</p>"; // 邮件内容支持html
49+
50+
$res = $mail->sent($to, $subject, $body);
51+
52+
53+
if (!$res){
54+
print_r($mail->getError());
55+
}else{
56+
echo '成功';
57+
}
58+
```

src/Mail.php

+11-2
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ public function __construct($config){
1212

1313
$mail = new \PHPMailer();
1414

15+
$mail->isSMTP();
16+
1517
if ($config['debug']){
1618
$mail->SMTPDebug = 3;
1719
}
@@ -36,9 +38,10 @@ public function __construct($config){
3638

3739
$this->config = $config;
3840
$this->mail = $mail;
41+
3942
}
4043

41-
public function sent($to , $subject , $body , $altBody = '', $replyTo = NULL , $attachments = null ){
44+
public function sent($to , $subject , $body , $replyTo = NULL , $attachments = null ){
4245

4346
if (is_array($to)){
4447
foreach ($to as $t){
@@ -65,7 +68,7 @@ public function sent($to , $subject , $body , $altBody = '', $replyTo = NULL ,
6568
$this->mail->isHTML(true);
6669
$this->mail->Subject = $subject;
6770
$this->mail->Body = $body;
68-
$this->mail->AltBody = $altBody;
71+
// $this->mail->AltBody = $altBody;
6972

7073
if (!$this->mail->send()){
7174
$this->error = $this->mail->ErrorInfo;
@@ -75,6 +78,12 @@ public function sent($to , $subject , $body , $altBody = '', $replyTo = NULL ,
7578
}
7679
}
7780

81+
public function addReplyTo($address , $name = ''){
82+
83+
$this->mail->addReplyTo($address , $name);
84+
85+
return true;
86+
}
7887
/**
7988
* 添加抄送
8089
*/

test.php

+27-12
Original file line numberDiff line numberDiff line change
@@ -5,27 +5,42 @@
55
use niklaslu\Mail;
66

77
$mailConfig = [
8-
'host' => '',
9-
'username' => '',
10-
'password' => '',
11-
'post' => '',
12-
// 'from' =>[
13-
// 'address' => '',
14-
// 'name' => ''
15-
// ],
16-
'from' => '',
8+
'debug' => false,
9+
'host' => 'smtp.yeah.net',
10+
'username' => '[email protected]',
11+
'password' => 'lc19890512',
12+
'port' => 465,
13+
'from' =>[
14+
'address' => '[email protected]',
15+
'name' => 'niklaslu'
16+
],
17+
// 'from' => '[email protected]',
1718

1819
];
1920

2021
$mail = new Mail($mailConfig);
2122

23+
// 添加回复人
24+
// $mail->addReplyTo('[email protected]' , 'lucong');
25+
// 添加抄送
26+
$CC = [
27+
['[email protected]' , 'lucong'],
28+
['[email protected]' , 'lccc']
29+
];
30+
// $mail->addCC($CC);
31+
// 添加密送
32+
// $BCC = $CC;
33+
// $mail->addBCC($BCC);
34+
35+
2236
23-
$subject = '测试';
24-
$body = '<h3>测试内容</h3>';
37+
$subject = '测试标题';
38+
$body = "<p>测试内容</p>";
2539
$res = $mail->sent($to, $subject, $body);
2640

41+
2742
if (!$res){
2843
print_r($mail->getError());
2944
}else{
3045
echo '成功';
31-
}
46+
}

0 commit comments

Comments
 (0)