Perinci-Sub-GetArgs-WebForm

 view release on metacpan or  search on metacpan

lib/Perinci/Sub/GetArgs/WebForm.pm  view on Meta::CPAN

    # for performance
    args_as => 'array',
    result_naked => 1,
};
sub get_args_from_webform {
    my $form = shift;

    my $args = {};
    for (keys %$form) {
        if (m!/!) {
            my @p = split m!/!, $_;
            next if @p > 10; # hardcode limit
            my $a0 = $args;
            for my $i (0..@p-2) {
                $a0->{$p[$i]} //= {};
                $a0 = $a0->{$p[$i]};
            }
            $a0->{$p[-1]} = $form->{$_};
        } else {
            $args->{$_} = $form->{$_};
        }



( run in 0.917 second using v1.01-cache-2.11-cpan-71847e10f99 )