php - 将单个数组拆分为数组
问题描述
我有一个定义的数组,
Array(
[0] => TEST
[1] => 1
[2] => 2
[3] => 3
)
现在我需要根据上面的数组将数组转换成三个不同的子数组
所需格式:
Array (
[NAME] => Test
[VALUE] => 1
)
Array (
[NAME] => Test
[VALUE] => 2
)
Array (
[NAME] => Test
[VALUE] => 3
)
解决方案
您可以使用array_shift
获取第一个元素:
$name = array_shift($arr);
$res = [];
foreach ($arr as $key => $value) {
$res[] = ["NAME" => $name, "VALUE" => $value];
}
print_r($res);
array_shift — 将一个元素从数组的开头移开
输出:-
Array
(
[0] => Array
(
[NAME] => TEST
[VALUE] => 1
)
[1] => Array
(
[NAME] => TEST
[VALUE] => 2
)
[2] => Array
(
[NAME] => TEST
[VALUE] => 3
)
)
编辑
如果您想要三个单独的子数组,请使用extract,
$temp = array_shift($arr);
$res = [];
foreach ($arr as $key => $value) {
$res['arr'.$key] = ["NAME" => $temp, "VALUE" => $value];
}
extract($res);
print_r($arr0);
print_r($arr1);
print_r($arr2);
extract — 从数组中将变量导入当前符号表
输出:-
Array
(
[NAME] => TEST
[VALUE] => 1
)
Array
(
[NAME] => TEST
[VALUE] => 2
)
Array
(
[NAME] => TEST
[VALUE] => 3
)
推荐阅读
- android - 在 if 语句中只激活一次动画
- java - 如何限制java HashMap的最大内存大小?
- php - 操纵购物车中的 woocommerc 价格
- python - 使用日期时间查找列表中的空白(开始/结束)
- arrays - TypeScript:用值或空输入数组/元组
- node.js - 在 sequelize 中搜索 where (column1 + column2 +column3) <= column4
- kotlin - 如何正确声明具有具体参数的挂起内联函数?
- kubernetes - Kubernetes Operator-sdk 1.2 没有本地运行选项
- python - 将值以分号分隔的数据帧系列转换为“1 对 1”数据帧
- r - 用不同的变量替换重复项