Задать вопрос
prrrrrrr
@prrrrrrr
Верстаю сразу на PHP.

Как правильно вывести сумму?

Подскажите, как в данном примере вывести сумму из БД? Пробовал двумя способами, ни один не подходит:

Способ №1:
foreach ($posts as $post) {
foreach ($find_ratings as $find_rating) {
if ($find_rating->post_id === $post->id) {
$a = array($find_rating->rating);
echo "сума = " . array_sum($a) . "\n";
}}}

Результат:
сума = 4 сума = 2 (а должна быть сума = 6)
и т.п.


И способ №2:
foreach ($posts as $post) {
foreach ($find_ratings as $find_rating) {
if ($find_rating->post_id === $post->id) {
$sum += $find_rating->rating;
echo $sum;
}}}

Результат:
46 (а должна быть сума = 6 — (4+2 в табл.))
1113 (а должно быть 7 — (5+2 в табл.))
и т.п.
  • Вопрос задан
  • 119 просмотров
Подписаться 1 Простой 3 комментария
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
Urvin
@Urvin
$sum = 0;
foreach ($posts as $post) {
  foreach ($find_ratings as $find_rating) {
    if ($find_rating->post_id === $post->id) {
      $sum += $find_rating->rating;      
    }
  }
}
echo $sum;


Однако, в условиях
сумму из БД

возможно, стоит воспользоваться SQL-запросом
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы