PHP 嵌套数组到字典


php nested array to dictionary

我怎样才能得到这个:

(
[0] => Array
    (
        [name] => variation
        [value] => variation1
    )
[1] => Array
    (
        [name] => variationid
        [value] => 70105
    )
[2] => Array
    (
        [name] => fullName
        [value] => 
    )
[3] => Array
    (
        [name] => address
        [value] => 
    )
[4] => Array
    (
        [name] => country
        [value] => usa
    )
[5] => Array
    (
        [name] => state
        [value] => Utah
    )

看起来像这样:

$fields['variation']=>variation1[variationid]=>70105.. etc

我试过了:

foreach($_POST['fields'] as $key => $value){
    $fields[$key] = $value;
}

我认为这应该有效,但它以完全相同的方式返回给我。这只是一个从jquery传递到POST的序列化数组(); 我基本上只是希望能够使用 $fields['variation'] 访问来访问它。但这让它变得困难。

您没有正确使用嵌套数组,$value使用 namevalue 保存数组,并且由于不需要$key (0,1,...),您甚至不需要定义它。

foreach ($_POST['fields'] as $data) {
    $fields[ $data['name'] ] = $data['value'];
}