I'm more of a fan of stuffing the customer info into a hash
the stuff in <readmore> tags is not as interesting
#! /usr/bin/perl use strict; sub send_spam { print @_; } my $_mergeFields = "##fname##;##lname##;##email##;##phone##;"; my $_list_to_send_to = "Richard;Smith;myemail\@testmail.com;8005551212 +;|Toby;Johnson;email2\@testmail.com;8885551212|Chanty;Perkins;another +\@test.com;8665551212;";
# trim the # marks $_mergeFields =~ s/#//g; # list of field names my @field_names = split ';', $_mergeFields; # list of lines from the data my @records = split /[|]/, $_list_to_send_to; my $template = q[
dear ##fname## great prices in \|iaqra and molex watches available speial offer for you now exclusive offer sent to ##email##
]; foreach( @records ) { my $message = $template; # hash to fill with customer information my %customer_record; # use a hash slice to populate it, # we now have keys fname lname email and phone @customer_record{ @field_names } = split ';', $_ ; # neat, a one line templating engine. $message =~ s/##$_##/$customer_record{$_}/g for keys %customer_rec +ord; send_spam $customer_record{email}, $message; }
Update
In reply to Re^2: merging two fields of data into one hash or array
by f00li5h
in thread merging two fields of data into one hash or array
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |