public
Description: A PHP class for performing email addresses validation via SMTP
Homepage:
Clone URL: git://github.com/zytzagoo/smtp-validate-email.git
name age message
file .gitignore Fri Jan 30 07:20:28 -0800 2009 Initial commit. [zytzagoo]
file README Fri Jan 30 07:20:28 -0800 2009 Initial commit. [zytzagoo]
file smtp-validate-email.php Loading commit data...
README
SMTP_Validate_Email - Perform email address verification via SMTP.

The class retrieves MX records for the email domain and then connects to the
domain's SMTP server to try figuring out if the address is really valid.

Some features (see the source for more):
* Not really sending a message, gracefully resetting the session when done
* Command-specific communication timeouts implemented per the relevant RFCs
* Catch-all account detection
* Batch mode processing supported
* MX query support on Windows without requiring any PEAR packages
* Logging and debugging support

Basic usage example:
<?php

    require('smtp-validate-email.php');

    $from = 'a-happy-camper@campspot.net'; // for SMTP FROM:<> command
    $email = 'someone@somewhere.net';

    $validator = new SMTP_Validate_Email($email, $from);
    $smtp_results = $validator->validate();

    var_dump($smtp_results);

?>

The class supports passing an array of addresses in the constructor, or to the
validate() method. The handling of multiple addresses on the same server uses
a single connection.

Array example:
<?php

    require('smtp-validate-email.php');

    $from = 'a-happy-camper@campspot.net'; // for SMTP FROM:<> command
    $emails = array(
        'someone@somewhere.net',
        'some-other@somewhere-else.net',
        'someone@example.com',
        'someone-else@example.com'
    );

    $validator = new SMTP_Validate_Email($emails, $from);
    $smtp_results = $validator->validate();

    // or passing to the validate() method
    // $validator = new SMTP_Validate_Email();
    // $smtp_results = $validator->validate($emails, $from);

    var_dump($smtp_results);

?>