Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re: JSON Structure Question

by roboticus (Chancellor)
on May 23, 2013 at 13:10 UTC ( #1034945=note: print w/replies, xml ) Need Help??

in reply to JSON Structure Question


Untested, but I'd try something like:

for my $key (sort keys %$data) { # $key should be 1, 2, then 3 here... for my $subject (sort keys {$data->{$key}) { # $subject should be subject1, then subject 2 here if ($subject eq "subject1") { print "$data->{$key}{$subject}\n"; } elsif ($subject eq "subject2" { # subject2 has arrayref of one item, # an href, with two keys: print "$data->{$key}{$subject}[0]{subject3}\n"; print "$data->{$key}{$subject}[0]{subject4}\n"; } } }


When your only tool is a hammer, all problems look like your thumb.

Replies are listed 'Best First'.
Re^2: JSON Structure Question
by omegaweaponZ (Beadle) on May 23, 2013 at 15:36 UTC
    This is the closest to what I'm looking for, as I can generate all the hashes, but I have yet to get each value. Just to clarify, I already can get every other value within the parenthesis of each json line, So everything within 1 {} I can get! The issue is I actually want to record and store the value of 1 itself, and 2, and 3, and so on, in one giant for loop that encompasses my ability to grab the values of each array within, so they are all assigned line by line
      Figured it out, hash was the way to approach this. But simplistically, all I needed to do was:
      my %hash = %{ $data }; while (my ($key, $value) = each %hash) { print "$key : $value \n";
      Instant first level report out

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1034945]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (7)
As of 2018-06-19 18:39 GMT
Find Nodes?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?

    Results (114 votes). Check out past polls.