php - 如何将一个数组中的值附加到另一个数组
问题描述
我有两个具有以下结构的数组
array
'main' => array
'firstYearStudents' => array
0 => '10'
1 => '12'
'secondYearStudents' => array
0 => '8'
1 => '9'
'programCode' => array
0 => '03.02.01'
1 => '03.01.01'
'educationProgramName' => array
0 => 'Mathematics'
1 => 'Physics'
'total' => array
'totalFirstYear' => '22'
'totalSecondYear' => '17'
'programCode' => '-'
'totalEducationProgramName' => 'Total Directions'
那么所需的结构应该看起来像这样
array
'main' => array
'firstYearStudents' => array
0 => '10'
1 => '12'
2 => '22'
'secondYearStudents' => array
0 => '8'
1 => '9'
2 => '17'
'programCode' => array
0 => '03.02.01'
1 => '03.01.01'
2 => '-'
'educationProgramName' => array
0 => 'Mathematics'
1 => 'Physics'
2 => 'Total Directions'
我尝试了以下方法,但我得到了命名键,所以我无法访问这些键。
$i = 0;
foreach ($studentsEditInfo['main'] as $values) {
$studentsEditInfo['main'] = array_merge($values, $studentsEditInfo['total'][$i]);
$i++;
}
我不知道如何在“主”数组的 foreach 循环中访问“总”数组的索引。
解决方案
如果您的“总计”数组的顺序始终保持这样,您可以在添加值之前将总计转换为数字数组。
像这样
$arr["total" ] = ["a" => 1,"b" => 2, "c" => 3];
$arrNumeric = [];
foreach ($arr["total"] as $item) {
$arrNumeric []= $item;
}
之后,您只需要运行此代码即可添加数组值
$i = 0;
foreach ($studentsEditInfo['main'] as $values) {
$values []= $arrNumeric[$i];
$i++;
}
我没有测试这个,顺便说一句。