繁体   English   中英

在php数组中移动值

[英]Move values within php array

我正在尝试在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"];

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

您可以将$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
        )

)

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

is_array($formField) or $formField = [];
array_key_exists('key', $formField) and $formField = [ $formField ];
$formField[] = ["key" => "new-key", "value"=>"new-value"];`

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM