Ruby 2.2.0 リファレンスマニュアル > ライブラリ一覧 > uriライブラリ > URIモジュール > decode_www_form
decode_www_form(str, enc=Encoding::UTF_8) -> [[String, String]]
[permalink][rdoc]文字列から URL-encoded form data をデコードします。
application/x-www-form-urlencoded 形式のデータをデコードし、 [key, value] という形の配列の配列を返します。
enc で指定したエンコーディングの文字列が URL エンコードされたものと みなし、エンコーディングを付加します。
このメソッドは http://url.spec.whatwg.org/#concept-urlencoded-parser にもとづいて実装されています。 そのため「&」区切りのみに対応していて、「;」区切りには対応していません。
require 'uri' ary = URI.decode_www_form("a=1&a=2&b=3") p ary #=> [['a', '1'], ['a', '2'], ['b', '3']] p ary.assoc('a').last #=> '1' p ary.assoc('b').last #=> '3' p ary.rassoc('a').last #=> '2' p Hash[ary] # => {"a"=>"2", "b"=>"3"}
[SEE_ALSO] URI.decode_www_form_component, URI.encode_www_form