php - 如何从一维数组创建具有关联子数组的数组?
问题描述
我有以下数组。
Array(
[1041] => 30
[1046] => 10
[1047] => 10
)
我想像下面一样存储它。
Array([0] => Array
(
[material_name] => 1041
[material_qty] => 30
)
[1] => Array
(
[material_name] => 1046
[material_qty] => 10
)
[2] => Array
(
[material_name] => 1047
[material_qty] => 10
) )
现在我正在尝试存储键值,但它只存储最后一个。
for($i=0; $i<count($materials); $i++){
foreach($materials as $key => $value){
$dataArrMaterial[$i] = array(
'material_name' => $key,
'material_qty' => $value
);
} }
_print($dataArrMaterial);
我的输出如下。
Array(
[0] => Array
(
[material_name] => 1047
[material_qty] => 10
)
[1] => Array
(
[material_name] => 1047
[material_qty] => 10
)
[2] => Array
(
[material_name] => 1047
[material_qty] => 10
) )
现在请帮助我做到这一点。提前致谢。
解决方案
你可以简化很多:
<?php
// ...
$dataArrMaterial = [];
foreach ($materials as $materialName => $materialQty) {
$dataArrMaterial[] = [
"material_name" => $materialName ,
"material_qty" => $materialQty
];
}
推荐阅读
- javascript - 销毁和对象,客户端
- c# - Azure Function C# - Http Trigger throws System.Web.Extensions could not be found
- r - 当负索引可能是整数(0)时,如何安全地从向量中删除任何内容?
- php - 如何在PHP中获取给定日期的时间前格式?
- r - 在 R 中调整图形大小闪亮
- reactjs - 我的 Axios 调用返回 404 错误,React/Express
- php - How to Reference File Two Directories Up, in Current File in PHP
- u-boot - u-boot 中的 CONFIG_SYS_EXTRA_OPTIONS 是什么?
- python - Rotating image makes the background dirty
- javascript - Get Dynamic Input ID javascript