foreach cicle с математикой предыдущей строки таблицы

#php #math #foreach #smarty #equation

#php #математика #foreach #умный #уравнение

Вопрос:

Здравствуйте, мне нужна помощь с этой проблемой. Я печатаю таблицу со значениями базы данных, но в одном поле строки это будет математика… Итак, как этот пример таблицы.

 <table style="border:1px solid black;">
<thead style="background:black;color:white;">
<th style="border:1px solid black;">date</th>
<th style="border:1px solid black;">debt</th>
<th style="border:1px solid black;">cred</th>
<th style="border:1px solid black;">result</th>
</thead>
<tbody>
<!-- foreach -->
<tr>
<td style="border:1px solid black;">01-10-2020</td>
<td style="border:1px solid black;">1000</td>
<td style="border:1px solid black;">100</td>
<!-- the follwing result is 1000-100 -->
<td style="border:1px solid black;">900</td>
</tr>
<tr>
<td style="border:1px solid black;">02-10-2020</td>
<td style="border:1px solid black;">0</td>
<td style="border:1px solid black;">200</td>
<!-- the follwing result is (0-200) 900 -->
<td style="border:1px solid black;">700</td>
</tr>
<tr>
<td style="border:1px solid black;">03-10-2020</td>
<td style="border:1px solid black;">150</td>
<td style="border:1px solid black;">0</td>
<!-- the follwing result is (150-0) 700 -->
<td style="border:1px solid black;">850</td>
</tr>
<!-- end foreach -->
</tbody>
</table>  

Итак, я ожидаю, что поле результата с этой формулой (с учетом долга) предыдущий результат предыдущей строки, первая строка равна (с учетом долга) 0 … и математическая звезда после первой строки.

Ответ №1:

Это может помочь вам, немного отступив от того, что у вас есть:

 <?php

$data =
[
    [100, 20],
    [20, 0],
    [0, 50]
];

$balance = 0;
foreach($data as $row) {
    $balance  = $row[0] - $row[1];
    printf("Cred: %d, Debt: %d, Balance: %d.n", $row[0], $row[1], $balance);
}
  

Вывод:

 Cred: 100, Debt: 20, Balance: 80.
Cred: 20, Debt: 0, Balance: 100.
Cred: 0, Debt: 50, Balance: 50.