Php 在多维数组中插入新的三个键

Php 在多维数组中插入新的三个键,php,Php,我有一个查询,它将以不同的数字显示列。 下面我的查询只有两行,但可能是四行、五行或更多行。 但是对于每个新数组,我需要插入三个不同的键(列4、列5和列6) 我正在尝试使用下面的代码,但它只会对具有相同键的列求和,这不是我想要的: $result = array(); foreach($arr[0] as $k => $v) $result[$k] = array_sum(array_column($arr, $k)); 我有以下数组: array(2) { [0]=> a

我有一个查询,它将以不同的数字显示列。 下面我的查询只有两行,但可能是四行、五行或更多行。 但是对于每个新数组,我需要插入三个不同的键(列4、列5和列6)

我正在尝试使用下面的代码,但它只会对具有相同键的列求和,这不是我想要的:

$result = array();

foreach($arr[0] as $k => $v)
$result[$k] = array_sum(array_column($arr, $k));
我有以下数组:

array(2) {
  [0]=>
  array(9) {
    ["column_1"]=>
    string(15) "Primary"
    ["column_2"]=>
    string(6) "298.50"
    ["column_3"]=>
    string(6) "298.50"
  }
  [1]=>
  array(9) {
    ["column_1"]=>
    string(17) "Secondary"
    ["column_2"]=>
    string(6) "694.50"
    ["column_3"]=>
    string(6) "694.50"
  }
}
我想要最后的结果:

array(2) {
  [0]=>
  array(9) {
    ["column_1"]=>
    string(15) "Primary"
    ["column_2"]=>
    string(6) "298.50"
    ["column_3"]=>
    string(6) "298.50"
    ["column_4"]=>
    string(6) "298.50"
    ["column_5"]=>
    string(6) "299.50"
    ["column_6"]=>
    string(6) "300.50"
  }
  [1]=>
  array(9) {
    ["column_1"]=>
    string(17) "Secondary"
    ["column_2"]=>
    string(6) "694.50"
    ["column_3"]=>
    string(6) "694.50"
    ["column_4"]=>
    string(6) "694.50"
    ["column_5"]=>
    string(6) "695.50"
    ["column_6"]=>
    string(6) "696.50"
  }
}
其中,列中的信息如下所示:

column_4: Average;
column_5: Average + 1
column_6: Average + 2

您需要循环
$result
,并通过添加到该位置的数组成员来对其成员执行计算:

foreach( $result as $k => $v )
{
    $result[ $k ][ 'column_4' ] = ( $v[ 'column_2' ] + $v[ 'column_3' ] ) / 2;
    $result[ $k ][ 'column_5' ] = $result[ $k ][ 'column_4' ] + 1;

    // I will let you figure out column_6 for yourself :)
}

如果您试图在查询中执行此操作,则可以执行此操作

SELECT AVG(my_column_name) as column_4, 
    AVG(my_column_name) + 1 as column_5,
    AVG(my_column_name) +2 as column_6
    FROM tablename

当前两个是
694.50
时,你是如何得到第4列的
1389
的?@MonkeyZeus我刚刚修复了它。谢谢。谢谢你的回答,但我需要通过PHP来完成。没问题。蒙基宙斯的答案对你有用吗?谢谢。利用你的理念,我找到了一个解决方案。