kein wunder, guck mal, was du evaluierst.
auch hier wieder ein schönes beispiel, wie ein print-statement an der richtigen stelle wunder wirkt.
perl -wle'
my $value = "Start your year with a Smart move .. Register for FREE";
my $eval = "require Encode; $value = Encode::decode('MIME-Header', $value)";
print "Eval:\n$eval"'
Eval:
require Encode; Start your year with a Smart move .. Register for FREE = Encode::decode(MIME-Header, Start your year with a Smart move .. Register for FREE)
ich nehme an, dass du stattdesssen
my $eval = "require Encode; \$value = Encode::decode('MIME-Header', \$value)";
tun willst. darf ich fragen, wieso es kein block-eval sein darf? string-eval
brauchst du doch hier echt nicht...
also
eval {
require Encode;
$value = Encode::decode('MIME-Header', $value);
}
edit: ein $ vergessen\n\n
<!--EDIT|pq|1106220970-->