两个或多个阵列之间的计算

时间:2015-05-10 08:40:16

标签: php mysql arrays

我在两个或更多阵列之间的数学运算方面遇到了麻烦。我将值存储在mysql数据库中,我以这种方式创建数组:

$ni = "SELECT * FROM $table_is_y WHERE id = 'N1'";
$ta = "SELECT * FROM $table_bs_y WHERE id = 'T1'";

$net_1 = $mysqli->query($ni);
$tot_1 = $mysqli->query($ta);

$arr_ni = mysqli_fetch_array($net_1);
$arr_ta = mysqli_fetch_array($tot_1);

通过这种方式,我应该创建两个名为 $ arr_ni $ arr_ta 的数组。以这种方式考虑阵列:

$ arr_ni =(ni1,ni2,ni3); $ arr_ta =(ta1,ta2,ta3);

例如,我需要计算一个值为的新数组:

$ arr_final =(ni1 * ta1,ni2 * ta2,ni3 * ta3);

您能帮我理解如何才能继续这样做吗? 感谢您的支持。

3 个答案:

答案 0 :(得分:1)

我在php中不知道但我知道如何计算所以请忽略我变量的愚蠢错误

这两个数组($ arr_ni,$ arr_ta)包含3个值。

所以你可以试试这个

你可以创建$ arr_final变量

for($i = 0; $i < $arr_ni.length; $i++) {
    $arr_final[$i] = $arr_ni[$i] * $arr_ta[$i];
}

所以最终在$ arr_final中得到答案。 我不确定,但我觉得它对你有帮助。

答案 1 :(得分:0)

我认为这种计算最好在查询本身中进行,例如:

SELECT 
    table_is_y.net_income*table_bs_y.total_assets AS final_sum
FROM
    net_income
LEFT JOIN
    table_bs_y on table_is_y.id=table_bs_y.id;

如果您在加入之前需要帮助加入/汇总表格,请询问......

答案 2 :(得分:0)

您可以使用array_map

<?php
function timesValues($x, $y)
{
    return $x * $y;
}

$a = array(1, 2, 3, 4, 5);
$b = array(6, 7, 8, 9, 10);

$c = array_map("timesValues", $a, $b);
print_r($c);