Sample code for 30+ languages & platforms
PHP ActiveX

MIME Multipart Boundary and Preamble Properties

See more MIME Examples

Demonstrates the Boundary property, which gets or sets the raw boundary token of a multipart entity (without surrounding quotation marks), and UseMmDescription, which controls whether the conventional preamble text is emitted when serializing a multipart entity.

Background. A multipart boundary separates the constituent parts. Chilkat quotes the token automatically in the header when required. The preamble is ignored by MIME-aware readers and is off by default.

Chilkat PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

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

//  Create a multipart/mixed entity.
$success = $mime->NewMultipartMixed();
if ($success == 0) {
    print $mime->LastErrorText . "\n";
    exit;
}

//  Boundary is the raw boundary token, without surrounding quotation marks.  Chilkat quotes it
//  automatically in the serialized header when required.
$mime->Boundary = 'example-boundary';

//  UseMmDescription controls whether the conventional preamble text
//  "This is a multi-part message in MIME format." is emitted.  The default is 0.
$mime->UseMmDescription = 1;

//  Add a simple part so the multipart has content.
$part = new COM("Chilkat.Mime");
$success = $part->SetBodyFromPlainText('First part.');
if ($success == 0) {
    print $part->LastErrorText . "\n";
    exit;
}

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

print 'Boundary = ' . $mime->Boundary . "\n";

$mimeStr = $mime->getMime();
if ($mime->LastMethodSuccess == 0) {
    print $mime->LastErrorText . "\n";
    exit;
}

print $mimeStr . "\n";

?>