在php数组中移动值

时间:2019-01-10 21:37:12

标签: php arrays

我正在尝试在wordpress插件之上构建一些东西。 为此,我需要向现有数组添加更多内容。

这将是数组的当前结果:

$formField = [
    'key' => 'my-key',
    'value' => 'my-value'
];

但是我想嵌套内容,所以我可以添加更多索引。

这将是所需的输出:

$formField = [
    '0' => [
        'key' => 'my-key',
        'value' => 'my-value'
    ]
];

我想到了:

if ( array_key_exists('key', $formField)) {
    $formFieldTemp = $formField;
    $formField = [];
    $formField[0] = $formFieldTemp;
}

我可以通过以下方式添加更多内容:

$formField[] = ["key" => "new-key", "value"=>"new-value"];

我的问题是:没有更好的方法将现有内容嵌套在此数组中吗?

2 个答案:

答案 0 :(得分:3)

您可以将$formField包装在数组[$formField]中并重新设置,而不用创建$formFieldTemp

$formField = [
    'key' => 'my-key',
    'value' => 'my-value'
];

if (array_key_exists('key', $formField)) {
    $formField = [$formField];
}

print_r($formField);

结果:

Array
(
    [0] => Array
        (
            [key] => my-key
            [value] => my-value
        )

)

答案 1 :(得分:0)

这三行应该为您完成。如果确定是数组,则可以删除第一个数组。

!''