可以通过索引访问PHP parse_str数组值吗?

tre*_*lez 2 php arrays parsing function query-string

希望这是一个简单的答案或以其他方式可行.我想使用parse_str将我的查询字符串值存储在数组中.

$querystring = "value1=SKIP&value2=SKIP&value3=GET&value4=GET";
parse_str($querystring, $fields);
Run Code Online (Sandbox Code Playgroud)

按名称访问数据的工作正常:

echo $fields['value3'];
Run Code Online (Sandbox Code Playgroud)

...但通过索引访问不会:

echo $ fields [2];

我想通过索引而不是名称访问的原因是因为在第二个数组值之后,其余的查询字符串参数将被动态生成.换句话说,对于我正在进行的处理 - 我希望获得第二个之后的所有参数.为了做到这一点,我将要使用一个简单的FOR循环从阵列到在第三值开始的sizeof(myArray的) ;

我有什么想法可以做到这一点?

mar*_*rio 5

您必须生成索引数组.你可以使用例如:

$indexed = array_values($fields);
print $indexed[2];  // eqivalent to $fields["value3"];
Run Code Online (Sandbox Code Playgroud)

请注意,索引从0开始.

如果需要,还可以将命名数组与索引版本组合:

$fields = array_merge($fields, array_values($fields));
$fields[2] == $fields["value3"];
Run Code Online (Sandbox Code Playgroud)