How can PHP developers ensure that emails with file attachments are sent securely and efficiently using PHP functions like mail()?

To ensure that emails with file attachments are sent securely and efficiently using PHP's mail() function, developers can use the PHPMailer library. PHPMailer provides a more robust and secure way to send emails with attachments, allowing for better control over the email sending process.

<?php
require 'vendor/autoload.php'; // Include PHPMailer library

$mail = new PHPMailer\PHPMailer\PHPMailer(); // Create a new PHPMailer instance
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = 'smtp.example.com'; // Specify main and backup SMTP servers
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = 'your@example.com'; // SMTP username
$mail->Password = 'yourpassword'; // SMTP password
$mail->SMTPSecure = 'ssl'; // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465; // TCP port to connect to

$mail->setFrom('your@example.com', 'Your Name');
$mail->addAddress('recipient@example.com', 'Recipient Name');
$mail->addAttachment('/path/to/file.pdf'); // Add attachment
$mail->isHTML(true); // Set email format to HTML

$mail->Subject = 'Subject';
$mail->Body    = 'Email body';

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