我需要将一个平面数组转换为一个嵌套数组,其中数组键指示结构,其中父元素变为元素零,即在示例中:
$education['x[1]'] = 'Georgia Tech';
需要将其转换为:
$education[1][0] = 'Georgia Tech';
这是一个输入数组示例:
$education = array(
'x[1]' => 'Georgia Tech',
'x[1][1]' => 'Mechanical Engineering',
'x[1][2]' => 'Computer Science',
'x[2]' => 'Agnes Scott',
'x[2][1]' => 'Religious History',
'x[2][2]' => 'Women\'s Studies',
'x[3]' => 'Georgia State',
'x[3][1]' => 'Business Administration',
);
输出应该是这样的:
$education => array(
1 => array(
0 => 'Georgia Tech',
1 => array( 0 => 'Mechanical Engineering' ),
2 => array( 0 => 'Computer Science' ),
),
2 => array(
0 => 'Agnes Scott',
1 => array( 0 => 'Religious History' ),
2 => array( 0 => 'Women\'s Studies' ),
),
3 => array(
0 => 'Georgia State',
1 => array( 0 => 'Business Administration' ),
),
);
我已经把头撞在墙上几个小时了,但仍然无法让它工作。我想我已经看它太久了。提前致谢。
附:它应该是完全可嵌套的,即它应该能够转换如下所示的键:
x[1][2][3][4][5][6]
附言@Joseph Silber 有一个聪明的解决方案,但不幸的是使用eval()
不是一个选项,因为它是一个 WordPress 插件,并且 WordPress 社区正在尝试杜绝使用eval()
.