【问题标题】:Perl - How can I turn a hash into a query string?Perl - 如何将哈希转换为查询字符串?
【发布时间】:2015-05-17 07:43:49
【问题描述】:

如何将哈希转换为查询字符串?我想找到一个不涉及使用 CGI 模块的解决方案。这是我想做的一个例子,但不知道最好和最优雅的方法是什么,因为我对 Perl 比较陌生。

哈希:

my $data = {
         'key1' => 'value1',
         'key2' => 'value2',
         'key3' => 'value3',
         'key4' => 'value4'
};

到所需的查询字符串:

key1=value1&key2=value2&key3=value3&key4=value4

【问题讨论】:

    标签: perl hash


    【解决方案1】:
    use URI qw( );
    my $url = URI->new('', 'http');
    $url->query_form(%$data);
    my $query = $url->query;
    

    如果您实际上是在尝试构建 POST 请求,请查看 HTTP::Request::CommonPOST

    【讨论】:

    • 请注意,如果您想获取带有查询字符串的 url,请使用 $url->as_string
    • @Matthew Lock,不,你不需要这样做。只需使用$url。它会自动字符串化到 URL。
    猜你喜欢
    • 1970-01-01
    • 2020-01-02
    • 2017-01-06
    • 2019-03-07
    • 2010-09-21
    • 2013-02-12
    • 2012-11-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多