PHP: gestire le e-mail con i template

Short link

In PHP possiamo gestire le e-mail usando dei template.

Partiamo dal seguente template testuale:


Dear {name},
here are your login details:

Username: {username}
Password: **********

Possiamo quindi scrivere il seguente codice:


function send_registration_email($user) {
    $template = file_get_contents($_SERVER['DOCUMENT_ROOT'] . '/templates/email/registration.txt');
    $to = $user['email'];
    $headers = 'From: My Site <no-reply@mysite.tld>' . "\r\n";
    $subject = 'My Site: Registration';
    $body = str_replace(['{name}','{username}'], [$user['name'],$user['username']], $template);
    return mail($to, $subject, $body, $headers);
}