use strict; use warnings; use JSON; my %bookmarks; for (1..3) { push @{$bookmarks{browserBookMarksData}}, { bookmark => "0", created => "01/12/2012" }; } print to_json \%bookmarks; #### {"browserBookMarksData":[{"created":"01/12/2012","bookmark":"0"},{"created":"01/12/2012","bookmark":"0"},{"created":"01/12/2012","bookmark":"0"}]} #### print "Enter the limit : "; chomp(my $lim = ); my %bookmarks; while ( $lim-- ) { push @{$bookmarks{browserBookMarksData}}, { bookMark => $charset[ rand(@charset) ], created => $charset2[ rand(@charset2) ], date => $charset3[ rand(@charset3) ], title => join '', @charset4[map {int rand @charset4} (1..8)], url => join '', @charset5[map {int rand @charset5} (1..8)], visits => $charset6[rand(@charset6) ], }; } print to_json \%bookmarks;