创建新密钥=>值对不在现有数组中


Creating new key => value pairs out of existing array

我有一个像这样的数组:

    Array
(
    [0] => stdClass Object
        (
            [food] => Pizza
            [music] => Rock
            [color] => blue
            [name] => John
        )
    [1] => stdClass Object
        (
            [food] => Toast
            [music] => Jazz
            [color] => yellow
            [name] => Greg
        )
    [2] => stdClass Object
        (
            [food] => Steak
            [music] => Classical
            [color] => green
            [name] => Steve
        )
    [3] => stdClass Object
        (
            [food] => Cake
            [music] => Blues
            [color] => red
            [name] => Peter
        )
)

如何创建一个新的数组,其中我将一些内容组合到新的key => value对,如Peter => Cake ?

我已经成功地使用了一些值,但它们没有连接到键:

$myArr = *The array posted above*
$newArray = array();
foreach ( $myArr as $arr ) {
    array_push( $newArray, $arr->food );
}

就像:

$newArray = array();
foreach ( $myArr as $arr ) {
    $newArray[$arr->name] = $arr->food;
}

请注意,重复的名称将被最后一次出现的名称覆盖。