Вычтите предыдущую переменную с текущей переменной в цикле php while

На самом деле, я действительно не знаю, как получить значение вычитания той же переменной.

Например (ожидаемое значение)

ожидаемый результат

и мой код был, как показано ниже:

$sel = mysql_query("SELECT RIGHT(serial,4) as value, serial, date
from photodata
where folder='$m' or (serial >= '$cm' && serial <= '$cm2')") or die(mysql_error());

while ($selt=mysql_fetch_array($sel)) {
$value = $selt['value'];
$ser = $selt['serial'];
$dd = $selt['date'];
$rr = $value-$value;
}

Я действительно уверен, что $ rr не сработает, но я только что попробовал. Пожалуйста, кто-нибудь, помогите мне.

0

Решение

Просто выведите $ rr в качестве значения вычитания и проверьте, изменил ли какой-то код в приведенном выше фрагменте. Надеюсь, это поможет вам.

$index = 0;
$oldv = 0;
while ($selt=mysql_fetch_array($sel)) {
$value = $selt['value'];
$ser = $selt['serial'];
$dd = $selt['date'];
if($index==0) {
$oldv = $value;
$index = 1;
}
$rr = $value - $oldv;
echo $rr;
$oldv = $value;
}
1

Другие решения

Я предполагаю, что вы хотите вычесть значение предыдущего ряда. Хотя рекомендуется не использовать функции mysql_ *.

$oldv = 0;
while ($selt=mysql_fetch_array($sel)) {
$oldv = ($oldv == 0) ? $value : $oldv;
$value= $selt['value'];
$ser=$selt['serial'];
$dd=$selt['date'];
echo $subtract = $value - $oldv;
echo $oldv = $value;
}
0

По вопросам рекламы [email protected]