php - 无循环的数组结构重排
问题描述
我有一个如下所述的数组,我想在不使用循环的情况下重新排列:
Array
(
[0] => Array
(
[Books] => Array
(
[id] => 4
)
)
[1] => Array
(
[Books] => Array
(
[id] => 3
)
)
[2] => Array
(
[Books] => Array
(
[id] => 2
)
)
[3] => Array
(
[Books] => Array
(
[id] => 1
)
)
)
我想要这样的输出:
Array(4,3,2,1)
解决方案
我假设您不想使用 for 或 foreach 循环,但内部使用或使用循环的任何其他内容都可以。
在这种情况下,您可以使用 array_map:
$result = array_map(function($item){
return $item['books']['id'];
}, $currentArray);
或者
如果你甚至不想这样:
$v1 = array_column($input, 'books');
$result = array_column($v1, 'id');
推荐阅读
- react-native - 如何在博览会反应原生段和幅度集成中发送会话信息并进行自动页面跟踪
- typescript - 如何动态检索类属性类型?
- reactjs - 如何将表单数据从 react 发布到 express.js 服务器并将其用作 url 字符串的一部分
- scala - Spark:查找前 n 个值的高效方法
- wordpress - 在搜索结果页面上的 BuddyPress 中显示异性
- c++ - 我的代码太麻烦了,我该如何解决?
- python - 如何修复此 Python Arcade Geometry Shader 错误?
- azure-data-lake - 数组输入中每个字符串的选择语句
- node.js - NodeJS Express API - 票务/队列系统
- python - Pytesseract 无法识别图像中的简单文本