Sample code for 30+ languages & platforms
PHP ActiveX

Save Email Attachments to Filesystem

Saves email attachments to a directory.

Chilkat PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

$email = new COM("Chilkat.Email");

// Load an email object containing attachments.
// This .eml can be downloaded from:
// http://www.example-code.com/testData/HtmlEmail.eml

$success = $email->LoadEml('HtmlEmail.eml');
if ($success != 1) {
    print $email->LastErrorText . "\n";
    exit;
}

// If OverwriteExisting is turned on, files with the same
// name are overwritten.  If turned off, new/unique filenames
// are automatically generated.  The filenames actually saved
// are accessible via the GetAttachmentFilename method.
$email->OverwriteExisting = 1;

// Save all attachments to the "myAttachments" subdirectory
// found under the calling process's current working directory.
// This directory is automatically created if it does not already
// exist.
$success = $email->SaveAllAttachments('myAttachments');
if ($success != 1) {
    print $email->LastErrorText . "\n";
    exit;
}

// List the attachment filenames:

for ($i = 0; $i <= $email->NumAttachments - 1; $i++) {
    print $email->getAttachmentFilename($i) . "\n";
}


?>