哪些语言、库和其他软件序列化URL参数中带有方括号的数组?(“?a[]=1和a[]=2”)


What languages, libraries and other software serialize arrays with square brackets in URL parameters? ("?a[]=1&a[]=2")

我知道jQuery>1.4,并且由于早期版本的PHP在URL参数中序列化数组,如下所示:

#1: ?param[]=value1&param[]=value2  # (assuming the '[]' characters are URL-encoded)

还有另一种方法:

#2: ?param=value1&param=value2

是否有其他语言、库等使用方法#1进行序列化?

是否有任何RFC提供了关于哪种方法有效的详细信息?

在URL参数中序列化数组的其他方法是什么?

1。)这种在url中使用方括号的表示法在严格意义上是无效的。它们应该被编码。然而,它"通常按预期工作"。

2.)你提供的两种符号表达了不同的东西。第一个结果是一个名为param的数组,其中包含两个值。第二个只创建一个标量变量,第一个值丢失(被覆盖)。尽管这实际上取决于服务器端对请求url的评估。我刚刚解释了"典型"的脚本引擎行为。当然,您也可以手动解析url并构造一个数组。