PHP测试成功的邮件发送案例

mail()函数的作用:连接到邮件服务器,利用smtp协议,与该服务器交互并投邮件。


注意:


1、mail函数不支持esmtp协议,—即,只能直投,不能登陆


2、由上条,我们只能直投至最终的收件服务器地址.而该地址,又是在PHP.ini中指定的,所以我们想用mail()函数往 aseoev@163.com发信的话,我们要—


1)查询163邮件服务器的地址


2)把该地址写到php.ini里去


php实例代码如下:



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函数来操作,例子代码如下:



<?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()?'发送成功':'发送失败';  ?> 


上面不带内容,面看个带内容的,代码如下:



<?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.jb51.net 专注前端开发与编程设计.'; //设置收信人 $phpmailer->AddAddress('never_4ill@163.com','neverkill'); // 添加一个抄送 $phpmailer->AddCC('1234567','Aseoe'); // 发信 echo $phpmailer->send()?'ok':'fail'; 


补充一个使用上面例子的方法:


SyntaxHighlighter.highlight();