Skip to content

Instantly share code, notes, and snippets.

@cowboy
Created December 15, 2009 20:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save cowboy/257267 to your computer and use it in GitHub Desktop.
Save cowboy/257267 to your computer and use it in GitHub Desktop.
PHP / Rails query string parsing examples
For jQuery 1.4 $.param()
See http://benalman.com/news/2009/12/jquery-14-param-demystified/
==========
PHP 5.2.11
==========
# print_r( $_GET );
?a=1&a=2&a=3
Array
(
[a] => 3
)
?a[]=4&a[]=5&a[]=6
?a[0]=4&a[1]=5&a[2]=6
Array
(
[a] => Array
(
[0] => 4
[1] => 5
[2] => 6
)
)
?a[]=4&a[]=5&a[3]=6
Array
(
[a] => Array
(
[0] => 4
[1] => 5
[3] => 6
)
)
?a[]=4&a[]=5&a[foo]=6
Array
(
[a] => Array
(
[0] => 4
[1] => 5
[foo] => 6
)
)
?a[0][]=1&a[0][]=2&a[1][]=3&a[1][]=4
Array
(
[a] => Array
(
[0] => Array
(
[0] => 1
[1] => 2
)
[1] => Array
(
[0] => 3
[1] => 4
)
)
)
===========
RAILS 2.3.4
===========
# rails foo && rm foo/public/index.html && ./foo/script/server
# in browser: http://0.0.0.0:3000/?params
?a=1&a=2&a=3
{"a"=>"3"}
?a[]=4&a[]=5&a[]=6
{"a"=>["4", "5", "6"]}
?a[0]=4&a[1]=5&a[2]=6
{"a"=>{"0"=>"4", "1"=>"5", "2"=>"6"}}
?a[]=4&a[]=5&a[3]=6
ERROR
?a[]=4&a[]=5&a[foo]=6
ERROR
?a[0][]=1&a[0][]=2&a[1][]=3&a[1][]=4
{"a"=>{"0"=>["1", "2"], "1"=>["3", "4"]}}
??? (not possible)
{"a"=>[["1", "2"], ["3", "4"]]}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment