• Skip to primary navigation
  • Skip to main content

Javier Lona

Web Developer in Texas

  • Home
  • Blog
  • Projects
  • Email
  • GitHub
  • LinkedIn
  • Twitter
  • YouTube

How to Send an Email via PHP’s Mail Function

July 9, 2018 by Javier

PHP has a built-in mail() function to send emails.

How Does it Work?

It requires the following parameters:

mail($to, $subject, $message);

If the server can send the email message, then the function returns true. Otherwise, it returns false. Let’s break down the parameters.

  • $to – AKA The Recipient(s), it can be a non-domain name email or valid address on your domain. Required.
  • $subject – The subject line of the email. Required.
  • $message – The body of the email. Required.

An optional headers parameter is also available.

mail($to, $subject, $message, $headers);
  • $headers – Additional features like from, replyto, cc, bcc, etc. Optional.

If defining a from in the $headers parameter, the email address has to have the domain name as the location of the PHP script. For example, the email has to come from ‘From: anything@javierlona.com’. The reply-to parameter can be assigned to the user’s email as they entered on the website’s contact form. For example, ‘Reply-To: random_person@gmail.com’.

Example Script

<?php

$to = 'user@anywhere.com'; 
$subject = 'PHP email test';
$message = 'This is a test of the PHP mail() function.';
$headers = 'From: info@javierlona.com';

$mailSent = mail($to, $subject, $message, $headers);

if ($mailSent) :
  echo 'Email has been sent';
  exit;
else :
  echo "Couldn't send email";
endif;

?>

Try out the script on your local development machine utilizing MailCatcher or on a live staging server.

Category iconGuide Tag iconPHP