PHP Sending Email (text/html)|PHP Mail() Function
Php 17-Jul-2021

PHP Sending Email (text/html)|PHP Mail() Function

PHP send email With Inbuilt PHP MAIL() function. This tutorial show you how you can send email in PHP using inbuilt PHP mail() function.

If you work with PHP, you need to send emails to users like when the user registered with us, send reset password link in the mail, if any offers send to users by email, send invoice or pdf, welcome mails, etc.

PHP Send Email

Here you will learn how to send text or HTML in emails using the PHP code.

The PHP mail() Function

Sending email is a very common process for any web application. Such as welcome email, reset password link, invoice or PDF if there is an offer, etc.

Here you will learn how to send an mail from your web application to one or more users using the PHP built-in mail () function. either in plain-text form or in HTML format.

The basic syntax of PHP mail function is:

 mail(tosubjectmessageheadersparameters)

Now we demonstrate to you the mail function parameters:

Parameter Required or Optional Description
to Yes The recipient’s email address.
subject Yes Subject of the email to be sent. This parameter i.e. the subject line cannot contain any newline character (\n).
message Yes Defines the message to be sent. Each line should be separated with a line feed-LF (\n). Lines should not exceed 70 characters.
headers No This is typically used to add extra headers such as “From”, “Cc”, “Bcc”. The additional headers should be separated with a carriage return plus a line feed-CRLF (\r\n).
parameters No Used to pass additional parameters.

Send Plain Text In Emails – PHP

The easy way to send an email with PHP is to send a text in the email. In the below-given example, we first declare the variables — recipient’s email address, subject line, and message body. After that, we pass these define variables to the mail() function to send the email.

Example of sending plain text in emails

The below example sends plain text in emails using the PHP Mail() function.

<?php
$to = 'youremail@email.com';
$subject = 'Testing Purpose';
$message = 'Hi there, this is the test mail using php mail() function?'; 
$from = 'tutsmake@email.com';
  
// Sending email
if(mail($to, $subject, $message)){
    echo 'Your mail has been sent successfully.';
} else{
    echo 'Unable to send email. Please try again.';
}
?>

Send HTML in Emails Using PHP Mail Function

When you send a simple text message in the mail using PHP mail function, that is treated as simple text. We are sending a well-designed mail to users, so that time we will send HTML in mail

If you want to send an HTML in emails using PHP mail function. So don’t worry, the email sending process will be the same. However, this time we add additional headers as well as an HTML formatted message.

Example of sending HTML in the email using PHP mail()

<?php
$to = 'yourmail@email.com'; // receiver email
$subject = 'Tesing Purpose'; // subject
$from = 'tutsmake@email.com'; // send email
  
// To send HTML mail, the Content-type header must be set
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  
// Create email headers
$headers .= 'From: '.$from."\r\n".
    'Reply-To: '.$from."\r\n" .
    'X-Mailer: PHP/' . phpversion();
  
// Compose a simple HTML email message
$message = '<html><body>';
$message .= '<h1 style="color:#f40;">Hi There!</h1>';
$message .= '<p style="color:#080;font-size:20px;">This is a testing mail with html?</p>';
$message .= '</body></html>';
  
// Sending email to receipt
if(mail($to, $subject, $message, $headers)){
    echo 'Your mail has been sent successfully.';
} else{
    echo 'Unable to send email. Please try again.';
}
?>

Conclusion

PHP send mail tutorial. Here you have learned how to send email in PHP using the mail() function. Also, you have learned how to send simple text and formatted HTML in mails using the inbuilt PHP mail() function.