复制最后4个数组键和值,并将它们添加到相同数组的末尾,但使用不同的键名


Copy last 4 array keys and values and add them onto end of the same array but with a different key name

我看过其他的问题和答案,但是没有什么能帮到我。

我有一个项目数组,例如像这样(项目的数量不同):

'harry' => 'dog',
'bob' => 'badger',
'george' => 'toad',
'fred' => 'frog',
'lucy' => 'bird',
'melanie' => 'cat'

,我想做的是始终采取最后4项从数组(无论多大的数组,记住,它是变量的项目将在其中的数量),复制它们,给每个键一个不同的名称,但保留值。那么这个数组就会变成这样:

'harry' => 'dog',
'bob' => 'badger',
'george' => 'toad',
'fred' => 'frog',
'lucy' => 'bird',
'melanie' => 'cat'
'adam' => 'toad',
'becca' => 'frog',
'tom' => 'bird',
'dave' => 'cat'

非常感谢任何人给我的帮助!

array_slice($array, -4)将给出$array的最后4个值。然后,您可以使用array_combine来获得具有这些相同值和您选择的键的新数组。最后,使用联合操作符将新的键/值对附加到原数组的末尾。

实际操作

您还可以采用许多其他方法,但我认为这个方法既简短又容易理解。