Я получаю эту ошибку
Argument "\\x{61}" isn't numeric in numeric comparison (<=>)
от
#!/usr/bin/perl
use JSON::PP;
use utf8;
use strict;
use warnings;
use Data::Dumper;
my $json = JSON::PP->new->allow_nonref;
$json = $json->utf8;
my $data = {
12 => {
a => 1,
b => 2,
},
1 => {
x => 3,
},
2 => {
z => 4,
}
};
my $json_string = $json->sort_by(sub { $JSON::PP::a <=> $JSON::PP::b })->encode($data);
Предполагается кодировать хеш в строку json, а затем численно сортировать ключи 12
1
2
.
Если проблему можно решить с помощью другого анализатора JSON, то это будет прекрасно =)
Что не так?