首页 > 后端开发 > php教程 > curl 发送MAIL-求助

curl 发送MAIL-求助

WBOY
发布: 2016-06-23 14:06:24
原创
1081 人浏览过


求助,CURL发送MAIL失败,请教一下代码哪里有问题

<?php header("content-type:text/html;charset=utf-8"); $smtp = array( "url" => "smtp.qq.com", "port" => "25", "username" => "11111@qq.com", "password" => "11111", "from" => "11111@qq.com", "to" => "11111@qq.com", "subject" => "testtttt", "body" => "testtttt" ); $CRLF = "\r\n"; $test = ""; $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $smtp['url']); curl_setopt($curl, CURLOPT_PORT, $smtp['port']); curl_setopt($curl, CURLOPT_TIMEOUT,10); function inlineCode($str){ $str = trim($str); return $str?'=?UTF-8?B?'.base64_encode($str).'?= ':''; } function buildHeader($headers){ $ret = ''; foreach($headers as $k=>$v){ $ret.=$k.': '.$v."\n"; } return $ret; } // $header = array( 'Return-path'=>'<'.$smtp['from'].'>', 'Date'=>date('r'), 'From'=> '<'.$smtp['from'].'>', 'MIME-Version'=>'1.0', 'Subject'=>inlineCode($smtp['subject']), 'To'=>$smtp['to'], 'Content-Type'=>'text/html; charset=UTF-8; format=flowed', 'Content-Transfer-Encoding'=>'base64' ); $data = buildHeader($header).$CRLF.chunk_split(base64_encode($smtp['body'])); $content = "EHLO ".$smtp["url"].$CRLF; // hello$content .= "AUTH LOGIN".$CRLF.base64_encode($smtp["username"]).$CRLF.base64_encode($smtp["password"]).$CRLF; // 验证登陆 $content .= "MAIL FROM:".$smtp["from"].$CRLF; // 发件地址 $content .= "RCPT TO:".$smtp["to"].$CRLF; // 收件地址 $content .= "DATA".$CRLF.$data.$CRLF.".".$CRLF; // 发送内容 $content .= "QUIT".$CRLF; // 退出 curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // curl接收返回数据 curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $content); $test = curl_exec($curl); var_dump($test); echo "<br/>\r\n"; var_dump($content); // 结束 curl_close($curl); 
登录后复制


回复讨论(解决方案)

谁能帮忙指点一下吗?

真不知道curl还有这个功能。我都直接用sendmail
还有用socket通讯要先写登录过程

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板