Эффект круглых скобок заключается в том, чтобы контролировать, какие вычисленные значения используются в качестве операндов для последующих операций. Они контролируют последовательность, в которой операции выполняются только в той степени, в которой операция не может быть оценена до тех пор, пока не будут выполнены ее операнды. Рассмотрим выражения:
(a()+b()) * (c()+d())
a() + (b()*c()) + d()
Скобки не должны (и в Java не могут) влиять на порядок, в котором вызываются вызовы a (), b (), c () и d (). Они могут повлиять на то, выполняется ли умножение до или после вызова d (), но только в очень редких случаях (например, d () вызывает интерфейс Java Native, который изменяет режим численного округления, используемый в умножении, способом, которым Java не знает about) будет иметь какой-либо способ узнать или заботиться о том, выполнялось ли умножение до или после d ().
В противном случае важно то, что в первом случае одна операция добавления будет действовать на () и b (), а другой - на c () и d (); умножение будет действовать на () + b () и c () + d (). В другом случае первое умножение будет действовать на b () и c (), первое сложение на a () и вышеупомянутое произведение, а второе сложение на первую сумму и d ().
Полагаю, вы хотите сделать это:
$total_rating_count = count($total_rating_count);
if ($total_rating_count > 0) // because you can't divide through zero
$avg = round($total_rating_points / $total_rating_count, 1);
$ total_ratings
- это массив, который вы не можете использовать для подразделения.
сверху:
$total_ratings = mysqli_fetch_array($result);