in reply to Re^2: Change MySQL 5.0 XML output to 4.0 output
in thread Change MySQL 5.0 XML output to 4.0 output

By programming :)
#!/usr/bin/perl -- use strict; use warnings; use XML::Simple; my $xml =<<'__XML__'; <?xml version='1.0'?> <table_data> <row> <field name="column1">Homer</field> <field name="column2">Homer Simpson</field> <field name="column3">Nuclear Systems Operation</field> </row> <row> <field name="column1">Marge</field> <field name="column2">Marge Simpson</field> <field name="column3">Homers caretaker</field> </row> </table_data> __XML__ $xml =~ s/^\s+//s; $xml =~ s/\s+\z//s; my $rows = XMLin($xml,ForceContent=>1, ForceArray=>1); print Data::Dumper->new([$rows])->Indent(1)->Dump;use Data::Dumper; for my $row( @{ $rows->{row} }){ for my $key( keys %{$row->{field}} ){ print "$key => ", $row->{field}{$key}{content},"\n"; } } __END__ $VAR1 = { 'row' => [ { 'field' => { 'column3' => { 'content' => 'Nuclear Systems Operation' }, 'column2' => { 'content' => 'Homer Simpson' }, 'column1' => { 'content' => 'Homer' } } }, { 'field' => { 'column3' => { 'content' => 'Homers caretaker' }, 'column2' => { 'content' => 'Marge Simpson' }, 'column1' => { 'content' => 'Marge' } } } ] }; column3 => Nuclear Systems Operation column2 => Homer Simpson column1 => Homer column3 => Homers caretaker column2 => Marge Simpson column1 => Marge
references quick reference

Replies are listed 'Best First'.
Re^4: Change MySQL 5.0 XML output to 4.0 output
by rycher (Acolyte) on Apr 29, 2009 at 16:14 UTC
    Doh! Apparently I can't wrap my mind around the hash of arrays concept. Thank you anonymous monk!