「Php/PHPMailer」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→サンプル) |
(→requireのエラーが出たら) |
||
(同じ利用者による、間の1版が非表示) | |||
行48: | 行48: | ||
} | } | ||
</nowiki> | </nowiki> | ||
+ | |||
+ | ==requireのエラーが出たら== | ||
+ | require __DIR__ . '/../src/Exception.php'; | ||
+ | require __DIR__ . '/../src/OAuth.php'; | ||
+ | require __DIR__ . '/../src/PHPMailer.php'; | ||
+ | require __DIR__ . '/../src/POP3.php'; | ||
+ | require __DIR__ . '/../src/SMTP.php'; | ||
+ | |||
+ | ==smtp送信ができないエラー== | ||
+ | 以下を追加 | ||
+ | $mail->SMTPOptions = array( | ||
+ | 'ssl' => array( | ||
+ | 'verify_peer' => false, | ||
+ | 'verify_peer_name' => false, | ||
+ | 'allow_self_signed' => true | ||
+ | ) | ||
+ | ); | ||
+ | 参考:https://github.com/PHPMailer/PHPMailer/issues/718 |
2018年2月14日 (水) 16:20時点における最新版
DL
git clone https://github.com/PHPMailer/PHPMailer
サンプル
vi PHPMailer/examples/smtp.phps
require '../vendor/autoload.php'; //Create a new PHPMailer instance $mail = new PHPMailer; //Tell PHPMailer to use SMTP $mail->isSMTP(); //Enable SMTP debugging // 0 = off (for production use) // 1 = client messages // 2 = client and server messages $mail->SMTPDebug = 2; //Set the hostname of the mail server $mail->Host = 'mail.example.com'; //Set the SMTP port number - likely to be 25, 465 or 587 $mail->Port = 25; //Whether to use SMTP authentication $mail->SMTPAuth = true; //Username to use for SMTP authentication $mail->Username = 'yourname@example.com'; //Password to use for SMTP authentication $mail->Password = 'yourpassword'; //Set who the message is to be sent from $mail->setFrom('from@example.com', 'First Last'); //Set an alternative reply-to address $mail->addReplyTo('replyto@example.com', 'First Last'); //Set who the message is to be sent to $mail->addAddress('whoto@example.com', 'John Doe'); //Set the subject line $mail->Subject = 'PHPMailer SMTP test'; //Read an HTML message body from an external file, convert referenced images to embedded, //convert HTML into a basic plain-text alternative body $mail->msgHTML(file_get_contents('contents.html'), __DIR__); //Replace the plain text body with one created manually $mail->AltBody = 'This is a plain-text message body'; //Attach an image file $mail->addAttachment('images/phpmailer_mini.png'); //send the message, check for errors if (!$mail->send()) { echo 'Mailer Error: ' . $mail->ErrorInfo; } else { echo 'Message sent!'; }
requireのエラーが出たら
require __DIR__ . '/../src/Exception.php'; require __DIR__ . '/../src/OAuth.php'; require __DIR__ . '/../src/PHPMailer.php'; require __DIR__ . '/../src/POP3.php'; require __DIR__ . '/../src/SMTP.php';
smtp送信ができないエラー
以下を追加
$mail->SMTPOptions = array( 'ssl' => array( 'verify_peer' => false, 'verify_peer_name' => false, 'allow_self_signed' => true ) );