Php 将多维数组转换为嵌套对象

Php 将多维数组转换为嵌套对象,php,multidimensional-array,associative-array,Php,Multidimensional Array,Associative Array,我想将多维数组转换为嵌套对象。 这是我的数组的一个例子,但是这个数组可以是任何索引长度。 我的解决方案仅适用于示例中给定的数组索引长度 $associativeArray = [ 'key' => [ [ 'name' => 'hey', 'value' => 'hello', ], [ 'name' => 'hey1',

我想将多维数组转换为嵌套对象。 这是我的数组的一个例子,但是这个数组可以是任何索引长度。 我的解决方案仅适用于示例中给定的数组索引长度

$associativeArray = [
    'key' => [
        [
            'name' => 'hey',
            'value' => 'hello',
        ],
        [
            'name' => 'hey1',
            'value' => 'hello1',
        ],
        [
            'name' => 'hey2',
            'value' => 'hello2',
        ],


    ],
    'test' => [
        [
            'name' => 'hey3',
            'value' => 'hello3',
        ]
    ]
];

我这样做是为了我的需要,但不是很优雅

foreach ($associativeArray as $subArray) {
    foreach ($subArray as $key => $value) {
        $subArray[$key] = (object)$value;
    }
    $nestedObjects[] = (object)$subArray;
}

$nestedObjects = (object)$nestedObjects;
我希望能够将任何维度的多维数据转换为嵌套对象。
有人能推荐一种优雅的方法吗?

一种快速的方法是:

json_decode(json_encode($associativeArray));
json\u encode($associateArray)
将数组转换为json字符串

json\u decode
将json字符串转换为
stdClass
对象