PHP Function Reference

PHP - Mail

The mail() function allows you to send emails directly from a script.


There is no installation needed to use these functions. These functions are part of the PHP core.

Runtime Configuration

The behavior of these functions is affected by settings in php.ini.

Mail Configuration Options

mail.add_x_header"0"Add X-PHP-Originating-Script that will include UID of the script followed by the filename.PHP_INI_PERDIR
mail.logNULLThe path to a log file that will log all mail() calls. Log entries include the full path of the script, line number, To address and headers.PHP_INI_SYSTEM | PHP_INI_PERDIR
mail.force_extra_parametersNULLForce the addition of the specified parameters to be passed as extra parameters to the sendmail binary. These parameters will always replace the value of the 5th parameter to mail(), even in safe mode.PHP_INI_SYSTEM | PHP_INI_PERDIR
SMTP"localhost"Windows only: host name or IP address of the SMTP server PHP should use for mail sent with the mail() function.PHP_INI_ALL
smtp_port"25"Windows only: Number of the port to connect to the server specified with the SMTP setting when sending mail with mail(); defaults to 25.PHP_INI_ALL
sendmail_fromNULLWhich "From:" mail address should be used in mail sent directly via SMTP (Windows only). This directive also sets the "Return-Path:" header.PHP_INI_ALL
sendmail_path"/usr/sbin/sendmail -t -i"

Where the sendmail program can be found, usually /usr/sbin/sendmail or /usr/lib/sendmail.

Systems not using sendmail should set this directive to the sendmail wrapper/replacement their mail system offers, if any. For example, Qmail users can normally set it to /var/qmail/bin/sendmail or /var/qmail/bin/qmail-inject.

qmail-inject does not require any option to process mail correctly.

This directive works also under Windows. If set, smtp, smtp_port and sendmail_from are ignored and the specified command is executed.

PHP Mail Functions

ezmlm_hash() Calculates the hash value needed by EZMLM.
mail() Sends mail.

PHP Mail Predefined Constants

This extension has no constants defined.