我知道您可以通过以下方式将值添加到数组parse_str()
:
parse_str( 'a[]=1&a[]=2&a[]=3' );
parse_str( 'a[0]=1&a[1]=2&a[2]=3' );
这些都会产生:
Array (
[0] => 1
[1] => 2
[2] => 3
)
我正在寻找产生这样的数组:
parse_str( 'a[]=1,2,3' );
有没有办法做到这一点,所以我不需要a[i]=
每次都键入?
不要使用parse_str()
,除非您非常确定自己在做什么。(下面解释。)相反,我建议使用类似JSON的东西,它不会更改意外变量,它相当快,标准化并且更易于生成/使用。
$str = '{"items":[1,2,3]}'
$obj = json_decode($data);
var_export($obj->items);
产量:
array (
0 => 1,
1 => 2,
2 => 3,
)
例如,尝试以下操作:
$input = '_SERVER[DOCUMENT_ROOT]=/foo';
parse_str($input);
echo($_SERVER['DOCUMENT_ROOT']);
哇,有人设法更改了存储服务器配置数据的变量之一。这很容易破坏诸如内容管理代码之类的东西,这些东西随后会将文件保存到错误的位置,或者绕过“必须是”检查的子文件夹。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句