PHPでは、mail()関数を使用してメールを送信することができます。この関数は、サーバーに設定されたメールサーバーを利用して、指定した宛先にメールを送信します。
基本的な使用例
<?php
$to = "recipient@example.com";
$subject = "Test Email";
$message = "This is a test email.";
$headers = "From: sender@example.com";
// メールを送信
if (mail($to, $subject, $message, $headers)) {
echo "メールが送信されました。";
} else {
echo "メール送信に失敗しました。";
}
?>
- $to: 送信先のメールアドレス
- $subject: メールの件名
- $message: メールの本文
- $headers: 追加のヘッダー情報(送信元のメールアドレスなど)
複数のヘッダーを追加する方法
メールに複数のヘッダーを追加することも可能です。たとえば、CcやBccを追加したい場合は、以下のようにヘッダーを設定します。
$headers = "From: sender@example.com\r\n";
$headers .= "Cc: another@example.com\r\n";
$headers .= "Bcc: hidden@example.com\r\n";
“\r\n”は、複数行のヘッダーを区切るために使用される改行コードです。
HTMLメールを送信する方法
HTMLメールを送信する場合、Content-typeヘッダーを追加し、メール本文をHTML形式で作成します。
<?php
$to = "recipient@example.com";
$subject = "HTML Email";
$message = "
<html>
<head>
<title>HTML Email</title>
</head>
<body>
<h1>This is a Heading</h1>
<p>This is a paragraph.</p>
</body>
</html>
";
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=UTF-8\r\n";
$headers .= "From: sender@example.com\r\n";
if (mail($to, $subject, $message, $headers)) {
echo "HTMLメールが送信されました。";
} else {
echo "HTMLメール送信に失敗しました。";
}
?>
注意点
- mail()関数は、PHPが動作するサーバーに適切なメールサーバーが設定されている必要があります。
- より高度なメール送信機能が必要な場合、PHPMailerやSwiftMailerなどのライブラリを使用することを検討してください。
まとめ
PHPでメールを送信する際には、mail()関数を利用して簡単にメールを送信することができますが、HTMLメールや複数のヘッダーを追加する場合は注意が必要です。より高度な機能が必要な場合は、専用のライブラリを活用すると良いでしょう。