What are the best practices for sending emails in PHP using SMTP authentication and SSL for secure transmission?

When sending emails in PHP using SMTP authentication and SSL for secure transmission, it is important to ensure that the connection is encrypted to protect sensitive information. To achieve this, you can use the PHPMailer library which provides a simple and secure way to send emails with SMTP authentication and SSL.

// Include the PHPMailer library
require 'path/to/PHPMailer/PHPMailerAutoload.php';

// Create a new PHPMailer instance
$mail = new PHPMailer;

// Enable SMTP debugging
$mail->SMTPDebug = 2;

// Set the hostname of the mail server
$mail->Host = 'smtp.example.com';

// Enable SMTP authentication
$mail->SMTPAuth = true;

// Set the SMTP username
$mail->Username = 'your_smtp_username';

// Set the SMTP password
$mail->Password = 'your_smtp_password';

// Enable SSL encryption
$mail->SMTPSecure = 'ssl';

// Set the port of the mail server
$mail->Port = 465;

// Set the sender's email address
$mail->setFrom('from@example.com', 'Sender Name');

// Set the recipient's email address
$mail->addAddress('recipient@example.com', 'Recipient Name');

// Set the subject of the email
$mail->Subject = 'Subject of the email';

// Set the body of the email
$mail->Body = 'Body of the email';

// Send the email
if(!$mail->send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
    echo 'Message has been sent';
}