Php 在对象而不是全局命名空间上解析_str

Php 在对象而不是全局命名空间上解析_str,php,security,Php,Security,通常使用parse_str('name=me&hunger=yes')将使变量$name和hunger分别等于'me'和'yes' 使用此函数的问题是,我正在通过用户输入运行它,并且由于变量被放在全局名称空间中,因此我不愿意确保不会因此受到任何攻击 有没有办法使此功能只将值放入给定变量?例如,parse_str('name=me&hunger=yes',$obj)将使obj等于 array('name' => 'me', 'hungry' => 'yes'); 不仅是举个例子,而且

通常使用
parse_str('name=me&hunger=yes')
将使变量
$name
hunger
分别等于
'me'
'yes'

使用此函数的问题是,我正在通过用户输入运行它,并且由于变量被放在全局名称空间中,因此我不愿意确保不会因此受到任何攻击

有没有办法使此功能只将值放入给定变量?例如,
parse_str('name=me&hunger=yes',$obj)
将使
obj
等于

array('name' => 'me', 'hungry' => 'yes');

不仅是举个例子,而且确切地说。请参阅,特别是示例。

解析str()的第二个参数将是一个参数数组。

解析str($string,$newarray)


$newarray是您可以从那里使用的数组

parse_str有什么问题('name=me&hunger=yes',$obj):?在阅读手册时,它应该按照您的意愿工作。第二个参数将通过引用传递。