php - 如何将嵌套数组键转换为索引php
问题描述
我有这个数组:
`$arr = array(
'foo' => 'foo',
'bar' => array(
'baz' => 'baz',
'candy' => 'candy',
'vegetable' => array(
'carrot' => 'carrot',
),
),
);
我想把它改成这样:
$arr = array(
'0' => 'foo',
'1' => array(
'0' => 'baz',
'1' => 'candy',
'2' => array(
'0' => 'carrot',
)
),
);
我试过 array_values 函数,但它只改变第一级,像这样:
$arr = array(
'0' => 'foo',
'1' => array(
'baz' => 'baz',
'candy' => 'candy',
'vegetable' => array(
'carrot' => 'carrot',
)
),
);
解决方案
Dipti 代码很棒。我稍微修饰了一下:
function array_values_recursive(array $arr ) : array {
$result = array();
foreach ($arr as $value) {
$result[] = is_array($value) ? array_values_recursive($value) : $value;
}
return $result;
}
推荐阅读
- java - Java,如何从 x,y 坐标列表中制作 PNG
- laravel - 从另一个用户路由 laravel 5.6 阻止用户
- sql - 如何获得总重复行数?
- java - MVC 模式不特定于 JDBC,关于三层架构
- ansible - 获取 Ansible 本地主机 Ipv4.address
- php - 查找数组中的第一个重复项
- python - List vs Dict 并使用 Zip:list(zip) 工作正常,但 dict(zip) 有点偏离
- java - 从数据库列填充列表视图而不重复值
- java - Python 与 Java,For 循环
- html - 如何让我插入的视频显示在我的页面上?