Advertisement
cd62131

Perl Reference

Oct 28th, 2017
267
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 1.38 KB | None | 0 0
  1. #!/usr/bin/env perl
  2. use strict;
  3. use warnings;
  4. use Data::Dump qq(pp);
  5.  
  6. package Chiebukuro;
  7. sub new {
  8.   return bless {};
  9. }
  10. sub get_info_json {
  11.   my ($self, $id1, $id2, $mode) = @_;
  12.   return {
  13.     data => [
  14.       {
  15.         name => 'name_test',
  16.         info1 => [
  17.           {
  18.             data1 => 'info1_data_01',
  19.             data2 => 'info1_data_02'
  20.           },
  21.           {
  22.             data1 => 'info1_data_11',
  23.             data2 => 'info1_data_12'
  24.           }
  25.         ],
  26.         info2 => [
  27.           {
  28.             data1 => 'info2_data_01',
  29.             data2 => 'info2_data_02'
  30.           },
  31.           {
  32.             data1 => 'info2_data_11',
  33.             data2 => 'info2_data_12'
  34.           },
  35.           {
  36.             data1 => 'info2_data_21',
  37.             data2 => 'info2_data_22'
  38.           }
  39.         ]
  40.       }
  41.     ]
  42.   };
  43. }
  44. sub getData {
  45.   my ($self, $dataref, $id) = @_;
  46.   my $json = $self->get_info_json('dummy', 'dummy', 0);
  47.   my $key = $json->{data}->[0];
  48.   $dataref->{$id}->{name} = $key->{name};
  49.   for my $key2 (@{$key->{info1}}) {
  50.     $dataref->{$id}->{data1} = $key2->{data1};
  51.     $dataref->{$id}->{data2} = $key2->{data2};
  52.   }
  53.   for my $key2 (@{$key->{info2}}) {
  54.     $dataref->{$id}->{data3} = $key2->{data1};
  55.     $dataref->{$id}->{data4} = $key2->{data2};
  56.   }
  57.   return $dataref;
  58. }
  59.  
  60. package main;
  61. my $c = Chiebukuro->new;
  62. pp $c->getData({}, 'ID');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement