mail()函数的作用:连接到邮件服务器,利用smtp协议,与该服务器交互并投邮件。
注意:
1、mail函数不支持esmtp协议,---即,只能直投,不能登陆
2、由上条,我们只能直投至最终的收件服务器地址.而该地址,又是在PHP.ini中指定的,所以我们想用mail()函数往 aseoev@163.com发信的话,我们要---
1)查询163邮件服务器的地址
2)把该地址写到php.ini里去
php实例代码如下:
1
2
3
|
SMTP = 163mx02.mxmail.netease.com sendmail_from = wusong@192.168.1.100 var_dump(mail( '12345678@qq.com' , 'from php mail function' , 'very intresting' )); |
但是使用php自带的mail函数发送邮件我们需要在linux中安装一个sendmail组件才可以否则无法使用。
如果你没有这个sendmail组件我们可以使用phpmailer函数来操作,例子代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
<?php require ( './PHPMailer/class.phpmailer.php' ); $phpmailer = new PHPMailer(); $phpmailer ->IsSMTP(); $phpmailer ->Host = 'smtp.163.com' ; $phpmailer ->SMTPAuth = true; $phpmailer ->Username = '' ; $phpmailer ->Password = '' ; $phpmailer ->CharSet = 'utf-8' ; $phpmailer ->From = '' ; $phpmailer ->FromName = '' ; $phpmailer ->Subject = '' ; $phpmailer ->Body = '' ; $phpmailer ->AddAddress( 'never_kiss@163.com' , 'Aseoe' ); echo $phpmailer ->send()? '发送成功' : '发送失败' ; ?> |
上面不带内容,面看个带内容的,代码如下:
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
|
<?php /** 用PHPMailer类来发信 步骤: 0: 引入 1: 实例化 2: 配置属性 3: 调用发送 **/ require ( './PHPMailer/class.phpmailer.php' ); $phpmailer = new PHPMailer(); /* 设置phpmailer发信用的方式 可用用win下mail()函数来发 可以用linux下sendmail,qmail组件来发 可以利用smtp协议登陆到某个账户上,来发 */ $phpmailer ->IsSMTP(); // 用smtp协议来发 $phpmailer ->Host = 'smtp.163.com' ; $phpmailer ->SMTPAuth = true; $phpmailer ->Username = '' ; //发送邮箱的账号(用163邮箱发信的账号) $phpmailer ->Password = '' ; //发送邮箱的密码 // 可以发信了 $phpmailer ->CharSet= 'utf-8' ; $phpmailer ->From = 'never_4ill@163.com' ; $phpmailer ->FromName = 'neverkill' ; $phpmailer ->Subject = 'Superstart Aseoe' ; $phpmailer ->Body = '服务器之家(http://www.zzvips.com 专注前端开发与编程设计.' ; //设置收信人 $phpmailer ->AddAddress( 'never_4ill@163.com' , 'neverkill' ); // 添加一个抄送 $phpmailer ->AddCC( '1234567' , 'Aseoe' ); // 发信 echo $phpmailer ->send()? 'ok' : 'fail' ; |
补充一个使用上面例子的方法:
直接将phpmailer压缩包解压放到根目录即可运行,直接把文件放到本地wamp 根目录,运行02.php 邮件即可发出(前提php文件可执行)-(不行的话 在根目录建一个文件夹 重复操作一次)http://localhost/02.php。
以上就是php发送邮件的成功案例,希望对大家的学习有所帮助。