# Takes an array and returns it as a CSV row sub format_csv { my @fields = @_; foreach (@fields) { if (not defined($_)) { $_ = ""; } elsif (0 == length($_)) { $_ = '""'; } elsif (/\s|"|'|,/) { s/"/""/g; $_ = qq("$_"); } } (join ",", @fields) . "\n"; }