ホームページ  >  記事  >  バックエンド開発  >  カールメールの送信 - ヘルプ

カールメールの送信 - ヘルプ

WBOY
WBOYオリジナル
2016-06-23 14:06:241051ブラウズ


ヘルプ、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を直接使用しています
また、ソケット通信を使用する場合は、最初にログイン処理を書く必要があります

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。