#!/usr/bin/env php 'key1', 'value' => 'data1'), array('groupKey' => 'key2', 'value' => 'data2') ); r($pivotTest->getGroupTreeWithKeyTest($data1)) && p() && e('key1'); // 步骤2:测试单层分组数据 - 期望构建基本树形结构 $data2 = array( array('groups' => array('group1'), 'groupKey' => 'item1', 'value' => 'data1'), array('groups' => array('group1'), 'groupKey' => 'item2', 'value' => 'data2'), array('groups' => array('group2'), 'groupKey' => 'item3', 'value' => 'data3') ); r($pivotTest->getGroupTreeWithKeyTest($data2)) && p('group1') && e('item1'); // 步骤3:测试多层递归分组数据 - 期望正确递归处理 $data3 = array( array('groups' => array('group1', 'subgroup1'), 'groupKey' => 'item1', 'value' => 'data1'), array('groups' => array('group1', 'subgroup2'), 'groupKey' => 'item2', 'value' => 'data2'), array('groups' => array('group2', 'subgroup1'), 'groupKey' => 'item3', 'value' => 'data3') ); r($pivotTest->getGroupTreeWithKeyTest($data3)) && p('group1:subgroup1') && e('item1'); // 步骤4:测试单个元素无groups字段 - 期望处理边界情况 $data4 = array( array('groupKey' => 'single', 'value' => 'data') ); r($pivotTest->getGroupTreeWithKeyTest($data4)) && p() && e('single'); // 步骤5:测试混合数据结构 - 期望正确处理复杂场景 $data5 = array( array('groups' => array('group1', 'subgroup1', 'level3'), 'groupKey' => 'deep1', 'value' => 'data1'), array('groups' => array('group1', 'subgroup2'), 'groupKey' => 'level2', 'value' => 'data2'), array('groups' => array('group2'), 'groupKey' => 'level1', 'value' => 'data3') ); r($pivotTest->getGroupTreeWithKeyTest($data5)) && p('group2') && e('level1');