Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

Re: XML Parser issue

by rg0now (Chaplain)
on Jul 05, 2007 at 12:28 UTC ( #625036=note: print w/replies, xml ) Need Help??

in reply to XML Parser issue

I need array of hash references. Means the above xml will produce two records in hash format. The two hash references will be pushed to array. I have written the below parser. But the result render only one record. The second record is empty. Please suggest.
Well, this is a job for XML::Simple. I think the script below does more or less what you want:
#!/usr/bin/perl use warnings; use strict; use XML::Simple; use Data::Dumper; my $xml = XMLin( \*DATA, ForceArray => [ 'page' ], ); print Dumper $xml->{page}; __DATA__ <story> <page> <author>Author 1 </author> <keywords>Keyword1 </keywords> <headline>Headline1 </headline> <image> Image1 </image> <description>Desc 1 </description> </page> <page> <author>Author 2</author> <keywords>Keyword2 </keywords> <headline>Headline 2 </headline> <image> Image2 </image> <description>Decs 2 </description> </page> </story> __OUTPUT__ $VAR1 = [ { 'keywords' => 'Keyword1 ', 'author' => 'Author 1 ', 'description' => 'Desc 1 ', 'image' => ' Image1 ', 'headline' => 'Headline1 ' }, { 'keywords' => 'Keyword2 ', 'author' => 'Author 2', 'description' => 'Decs 2 ', 'image' => ' Image2 ', 'headline' => 'Headline 2 ' } ];
Best regards,

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://625036]
[Discipulus]: good morning nuns and monks!

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (8)
As of 2017-11-23 08:01 GMT
Find Nodes?
    Voting Booth?
    In order to be able to say "I know Perl", you must have:

    Results (330 votes). Check out past polls.