[SP-pm] Sort HoA Multidimensional

Gabriel Vieira gabriel.vieira at gmail.com
Sun Mar 1 15:06:03 PST 2009


Ai preciso do conteúdo desse $self->{all_info}, certo?


2009/3/1 Daniel de Oliveira Mantovani <daniel.oliveira.mantovani em gmail.com>:
> Humm... não está funcionando.
>
> <code>
>
>     my %x = %{ $self->{all_info} };
>     my @sorte = sort { @{ $x{$b} }[2] <=> @{ $x{$a} }[2] } keys %x;
>     print Dumper @sorte;
>
> </code>
>
> Se alguém tiver alguma sugestão.
>
> 2009/3/1 Gabriel Vieira <gabriel.vieira em gmail.com>
>>
>> ---------------->8----------------
>> my %x;
>>
>> $x{1} = ["test1","teste1",5,"no comments",9];
>> $x{2} = ["test2","teste2",1,"no comments",2];
>> $x{3} = ["test3","teste3",9,"no comments",5];
>> $x{4} = ["test4","teste4",2,"no comments",2];
>> $x{5} = ["test5","teste5",8,"no comments",1];
>>
>> print sort { @{$x{$a}}[2] <=> @{$x{$b}}[2] } keys %x;
>>
>> ----------------8<----------------
>>
>> 2009/3/1 Daniel de Oliveira Mantovani
>> <daniel.oliveira.mantovani em gmail.com>:
>> > Salve Gabriel :)
>> >
>> > Eu tenho algo assim:
>> >
>> >       $self->{all_info}{$link} =
>> > [$nome_EN,$nome_PT,$downloads,$comentarios,$avaliacao];
>> >
>> > Eu quero por exemplo pegar o que tem mais número de downloads, e
>> > imprimir o
>> > $hash que o array tem o $downloads maior do que todos os outros.
>> >
>> > Vou tentar, o que você passou :P
>> >
>> > []'s
>> >
>> > 2009/3/1 Gabriel Vieira <gabriel.vieira em gmail.com>
>> >>
>> >> Opa!
>> >>
>> >> --------------->8---------------
>> >> my %x;
>> >> $x{1} = qw(10 20 30 40 50);
>> >> $x{2} = qw(1 2 3 4 5);
>> >> $x{3} = qw(100 200 300 400 500);
>> >>
>> >> print sort { $x{$a} <=> $x{$b} } keys %x;
>> >> ---------------8<---------------
>> >>
>> >>
>> >> On Sat, Feb 28, 2009 at 10:00 PM, Daniel de Oliveira Mantovani
>> >> <daniel.oliveira.mantovani em gmail.com> wrote:
>> >> > Olá monges, eu tenho um HoA Multidimensional:
>> >> >
>> >> > $hash{chave1} = [valor1,valor2 .. valor4];
>> >> >
>> >> > $hash{chave2} = [valor1,valor2 .. valor4];
>> >> >
>> >> > $hash{chave3} = [valor1,valor2 .. valor4];
>> >> >
>> >> > A minha dúvida é a seguinte, eu quero imprimir o $hash{chave1 ..
>> >> > 3}[0] e
>> >> > que ordene pelo primeiro item do array dentro do hash.
>> >> > Se no $hash{chave1}, o primeiro valor do array for 50, e do
>> >> > $hash{chave2}
>> >> > for 10, imprima a chave 2 o array dentro dela e só depois o
>> >> > ${chave1}.
>> >> >
>> >> > Bom pessoal é algo um pouco complicado, pelo menos para eu que sou
>> >> > newbie.
>> >> > Estou fazendo um Módulo, e quero dar a opção de sort.
>> >> >
>> >> > Resumindo, eu quero ordenar o HoA pelo [0] ou [1] existene dentro
>> >> > dele.
>> >> >
>> >> > Obrigado
>> >> >
>> >> > []'s
>> >> > --
>> >> > http://mantovanihouse.blogspot.com/
>> >> >
>> >> > -------(\_------------_/)-----------
>> >> > -------)--(----------)--(-----------
>> >> > ------(----(---------)----)----------
>> >> > -------)----(-------)----(-----------
>> >> > -------(----(-------)----)-----------
>> >> > --------\_-(\\.---.//)-_/------------
>> >> > ----------\)' -8--8- '(/--------------
>> >> > -----------/------------\---------------
>> >> > ----------(--)--------(--)--------------
>> >> > ------------(_c__c_)----------------
>> >> > ----------------------------------------
>> >> >
>> >> > _______________________________________________
>> >> > SaoPaulo-pm mailing list
>> >> > SaoPaulo-pm em pm.org
>> >> > http://mail.pm.org/mailman/listinfo/saopaulo-pm
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> Gabriel Vieira
>> >> _______________________________________________
>> >> SaoPaulo-pm mailing list
>> >> SaoPaulo-pm em pm.org
>> >> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>> >
>> >
>> >
>> > --
>> > http://mantovanihouse.blogspot.com/
>> >
>> > -------(\_------------_/)-----------
>> > -------)--(----------)--(-----------
>> > ------(----(---------)----)----------
>> > -------)----(-------)----(-----------
>> > -------(----(-------)----)-----------
>> > --------\_-(\\.---.//)-_/------------
>> > ----------\)' -8--8- '(/--------------
>> > -----------/------------\---------------
>> > ----------(--)--------(--)--------------
>> > ------------(_c__c_)----------------
>> > ----------------------------------------
>> >
>> > _______________________________________________
>> > SaoPaulo-pm mailing list
>> > SaoPaulo-pm em pm.org
>> > http://mail.pm.org/mailman/listinfo/saopaulo-pm
>> >
>>
>>
>>
>> --
>> Gabriel Vieira
>> _______________________________________________
>> SaoPaulo-pm mailing list
>> SaoPaulo-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
>
>
> --
> http://mantovanihouse.blogspot.com/
>
> -------(\_------------_/)-----------
> -------)--(----------)--(-----------
> ------(----(---------)----)----------
> -------)----(-------)----(-----------
> -------(----(-------)----)-----------
> --------\_-(\\.---.//)-_/------------
> ----------\)' -8--8- '(/--------------
> -----------/------------\---------------
> ----------(--)--------(--)--------------
> ------------(_c__c_)----------------
> ----------------------------------------
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>



-- 
Gabriel Vieira


More information about the SaoPaulo-pm mailing list