my $csv = Text::CSV_XS->new; # Or Text::CSV
my @hdr = $csv->header ($if, { detect_bom => 1 });
# No need for $csv->column_names, as that is implicit in ->header
####
use Text::CSV_XS qw( csv );
my $aoh = csv (in => $dbfile, sep => "\t", bom => 1);
####
my $aoh = csv (in => $dbfile, sep => "\t", bom => 1, kh => \my @hdr);