PHP Classes

File: examples/index.php

Recommend this page to a friend!
  Classes of Lars Moelleken   PHPMailer Bounce Mail Handler   examples/index.php   Download  
File: examples/index.php
Role: Example script
Content type: text/plain
Description: Example script
Class: PHPMailer Bounce Mail Handler
Handle bounced messages in a IMAP mailbox
Author: By
Last change: Update of examples/index.php
Date: 1 year ago
Size: 4,667 bytes
 

Contents

Class file image Download
<?php

use BounceMailHandler\BounceMailHandler;

/*~ index.php
.---------------------------------------------------------------------------.
| Software: PHPMailer-BMH (Bounce Mail Handler) |
| Version: 5.5-dev |
| Contact: codeworxtech@users.sourceforge.net |
| Info: http://phpmailer.codeworxtech.com |
| ------------------------------------------------------------------------- |
| Author: Andy Prevost andy.prevost@worxteam.com (admin) |
| Copyright (c) 2002-2009, Andy Prevost. All Rights Reserved. |
| ------------------------------------------------------------------------- |
| License: Distributed under the General Public License (GPL) |
| (http://www.gnu.org/licenses/gpl.html) |
| This program is distributed in the hope that it will be useful - WITHOUT |
| ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. |
| ------------------------------------------------------------------------- |
| This is a update of the original Bounce Mail Handler script |
| http://sourceforge.net/projects/bmh/ |
| The script has been renamed from Bounce Mail Handler to PHPMailer-BMH |
| ------------------------------------------------------------------------- |
| We offer a number of paid services: |
| - Web Hosting on highly optimized fast and secure servers |
| - Technology Consulting |
| - Oursourcing (highly qualified programmers and graphic designers) |
'---------------------------------------------------------------------------'

/*
 * This is an example script to work with PHPMailer-BMH (Bounce Mail Handler).
 */

$time_start = microtime_float();

require_once
'../vendor/autoload.php';

// Use ONE of the following -- all echo back to the screen

//require_once 'callback_echo.php';
//require_once('callback_database.php'); // NOTE: Requires modification to insert your database settings
//require_once('callback_csv.php'); // NOTE: Requires creation of a 'logs' directory and making writable

// testing examples
$bmh = new BounceMailHandler();
$bmh->actionFunction = 'callbackAction'; // default is 'callbackAction'
$bmh->verbose = BounceMailHandler::VERBOSE_SIMPLE; //BounceMailHandler::VERBOSE_SIMPLE; //BounceMailHandler::VERBOSE_REPORT; //BounceMailHandler::VERBOSE_DEBUG; //BounceMailHandler::VERBOSE_QUIET; // default is BounceMailHandler::VERBOSE_SIMPLE
//$bmh->useFetchStructure = true; // true is default, no need to specify
//$bmh->testMode = false; // false is default, no need to specify
//$bmh->debugBodyRule = false; // false is default, no need to specify
//$bmh->debugDsnRule = false; // false is default, no need to specify
//$bmh->purgeUnprocessed = false; // false is default, no need to specify
$bmh->disableDelete = true; // false is default, no need to specify

/*
 * for local mailbox (to process .EML files)
 */
//$bmh->openLocal('/home/email/temp/mailbox');
//$bmh->processMailbox();

/*
 * for remote mailbox
 */
$bmh->mailhost = ''; // your mail server
$bmh->mailboxUserName = ''; // your mailbox username
$bmh->mailboxPassword = ''; // your mailbox password
$bmh->port = 143; // the port to access your mailbox, default is 143
$bmh->service = 'imap'; // the service to use (imap or pop3), default is 'imap'
$bmh->serviceOption = 'notls'; // the service options (none, tls, notls, ssl, etc.), default is 'notls'
$bmh->boxname = 'INBOX'; // the mailbox to access, default is 'INBOX'

//$bmh->moveHard = true; // default is false
//$bmh->hardMailbox = 'INBOX.hardtest'; // default is 'INBOX.hard' - NOTE: must start with 'INBOX.'
//$bmh->moveSoft = true; // default is false
//$bmh->softMailbox = 'INBOX.softtest'; // default is 'INBOX.soft' - NOTE: must start with 'INBOX.'
//$bmh->deleteMsgDate = '2009-01-05'; // format must be as 'yyyy-mm-dd'

/*
 * rest used regardless what type of connection it is
 */
$bmh->openMailbox();
$bmh->processMailbox();

echo
'<hr style="width:200px;" />';
$time_end = microtime_float();
$time = $time_end - $time_start;
echo
'Seconds to process: ' . $time . '<br />';

/**
 * @return float
 */
function microtime_float(): float
{
    list(
$usec, $sec) = \explode(' ', \microtime());

    return (float)
$usec + (float) $sec;
}