Я вытаскиваю набор чисел из базы данных MySQL и пытаюсь сделать с ними простую математическую задачу, чтобы вычислить общую стоимость для выставления счета, но PHP не сотрудничает. Я подумал, что это может быть проблема приведения типов, поэтому я попытался добавить несколько вызовов intval
и floatval
, но общее количество всегда получается равным 0.
Вот соответствующий код.
$totalSum = 0;
$parts = $db->select("*", "WHERE record_id=$id", "recordparts");
foreach($parts as &$part) {
$part['priceTotal'] = (floatval($part['price']) * intval($price['quantity'])) + (floatval($part['laborTime']) * floatval($price['laborRate']));
$totalSum += $part['priceTotal'];
}
$record['parts'] = $parts;
$record['partsSum'] = $totalSum;
А вот и результаты вышеуказанной операции
parts => Array (1)
0 => Array (8)
id => "18"
partNumber => "92-000001"
record_id => "17"
price => "11.5"
laborTime => "2"
laborRate => "65"
quantity => "1"
priceTotal => 0
partsSum => 0