我在两个或更多阵列之间的数学运算方面遇到了麻烦。我将值存储在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);
您能帮我理解如何才能继续这样做吗? 感谢您的支持。
答案 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);