Sample code for 30+ languages & platforms
PHP ActiveX

Create a multipart/alternative MIME Entity

See more MIME Examples

Demonstrates the Chilkat Mime.NewMultipartAlternative method, which initializes the object as an empty multipart/alternative entity. It takes no arguments; the alternative representations are then appended.

Background: multipart/alternative holds several renderings of the same content and lets the client pick the best one it can display — the standard way to send an email as both plain text and HTML. Order matters: parts go from least to most preferred, so the plain-text version comes first and the HTML last, and a client shows the last one it understands.

Chilkat PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

//  Demonstrates the Mime.NewMultipartAlternative method, which initializes the object as an empty
//  multipart/alternative entity, clearing any existing content.  It takes no arguments.

$mime = new COM("Chilkat.Mime");

$success = $mime->NewMultipartAlternative();
if ($success == 0) {
    print $mime->LastErrorText . "\n";
    exit;
}

//  multipart/alternative holds two representations of the SAME content; the client displays the
//  last one it can render.  Add a plain-text part, then an HTML part.
$textPart = new COM("Chilkat.Mime");
$success = $textPart->SetBodyFromPlainText('Hello (plain text version).');
if ($success == 0) {
    print $textPart->LastErrorText . "\n";
    exit;
}

$success = $mime->AppendPart($textPart);
if ($success == 0) {
    print $mime->LastErrorText . "\n";
    exit;
}

$htmlPart = new COM("Chilkat.Mime");
$success = $htmlPart->SetBodyFromHtml('<html><body><b>Hello</b> (HTML version).</body></html>');
if ($success == 0) {
    print $htmlPart->LastErrorText . "\n";
    exit;
}

$success = $mime->AppendPart($htmlPart);
if ($success == 0) {
    print $mime->LastErrorText . "\n";
    exit;
}

print 'Number of alternatives: ' . $mime->NumParts . "\n";

?>