Sample code for 30+ languages & platforms
Perl

Remove a Header Field from an Email

See more Email Object Examples

Demonstrates the Chilkat Email.RemoveHeaderField method, which removes by name all occurrences of a header field. Header-field names are case-insensitive, and every repeated occurrence with the given name is removed. This example adds a custom header, then removes it.

Background: Editing a message sometimes means deleting a header outright — stripping a tracking header, removing an X- flag before forwarding, or clearing a stale field before re-sending. Because a field name can appear more than once (like Received), RemoveHeaderField removes all matching occurrences in one call rather than just the first.

Chilkat Perl Downloads

Chilkat2 Perl
use strict;
use warnings;
use Chilkat2;

# Demonstrates the RemoveHeaderField method, which removes by name all occurrences of a
# header field.  Header-field names are case-insensitive.

my $email = Chilkat2::Email->new;
$email->Subject('Remove header field');
$email->From('alice@example.com');

$email->AddHeaderField('X-Custom-Header', 'some value');

# Use HasHeaderMatching to test for the header's presence.  ("*" matches any value.)
my $hasBefore = $email->HasHeaderMatching('X-Custom-Header', '*', 0);
print 'Has X-Custom-Header before: ', ($hasBefore ? 1 : 0), "\n";

# Remove all occurrences of the header field.
$email->RemoveHeaderField('X-Custom-Header');

my $hasAfter = $email->HasHeaderMatching('X-Custom-Header', '*', 0);
print 'Has X-Custom-Header after: ', ($hasAfter ? 1 : 0), "\n";