我有一系列猫对象:
$cats = Array
(
[0] => stdClass Object
(
[id] => 15
),
[1] => stdClass Object
(
[id] => 18
),
[2] => stdClass Object
(
[id] => 23
)
)
Run Code Online (Sandbox Code Playgroud)
我想在一行中提取猫的ID数组(不是函数也不是循环).
我想使用array_walk带create_function,但我不知道该怎么做.
任何的想法?
TLDR; 我的问题与PHP不同.是否可以将array_column与对象数组一起使用.我只想更改数组中的键并保留对象,而不是将对象的值存储在单独的数组中,如给定的答案.
我想将具有对象的数组的键设置为对象的值.所以这个数组:
$array = Array
(
[0] => stdClass Object
(
[id] = 12234
[value] = some value
)
[1] => stdClass Object
(
[id] = 12994
[value] = some value
)
)
Run Code Online (Sandbox Code Playgroud)
应该成为:
$array = Array
(
[12234] => stdClass Object
(
[id] = 12234
[value] = some value
)
[12994] => stdClass Object
(
[id] = 12994
[value] = some value
)
)
Run Code Online (Sandbox Code Playgroud)
现在我可以遍历阵列,但我更喜欢更清洁的解决方案.我认为这应该有效:
$newArray = array_column($array, null, 'id');
Run Code Online (Sandbox Code Playgroud)
唯一的问题是我有一个对象数组而不是数组数组,我还没有使用PHP7.现在我在PHP上发现了一个类似的问题 …