@woebegone

Как правильно посчитать разницу цен в процентом соотношении на php?

Есть товары в базе с ценниками, допустим они все в переменной ($prices) через запятую например.
(5000, 2350, 4200, 4000..)
На странице каждого товара хочу вывести разницу в процентом соотношении в сравнении с остальными ценниками.
Например такое: "Этот товар дешевле на 25%" или если он дороже то соответственно "Этот товар дороже на 15%" и тд.
Даже теоретически не могу пока сообразить как такое реализовать.
Нашел похожую реализацию вот тут
600a7d417959b059582986.jpeg
Как правильно подсчитать этот процент?
  • Вопрос задан
  • 211 просмотров
Решения вопроса 1
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
Если список цен это все похожие, то сперва находим среднюю цену, а потом сравниваем текущую со средней
<?php
$prices = [5000, 2350, 4200, 4000, 3000, 4500];
$avg_price = round(array_sum($prices) / count($prices), 2);

foreach($prices as $price)
{
    $abs_diff = round(abs($price-$avg_price)/$avg_price*100, 2);
    echo "Цена {$price} на {$abs_diff}% ".
          ($price > $avg_price ? "дороже" : "дешевле")." чем средняя {$avg_price}\n";
}


Цена 5000 на 30.15% дороже чем средняя 3841.67
Цена 2350 на 38.83% дешевле чем средняя 3841.67
Цена 4200 на 9.33% дороже чем средняя 3841.67
Цена 4000 на 4.12% дороже чем средняя 3841.67
Цена 3000 на 21.91% дешевле чем средняя 3841.67
Цена 4500 на 17.14% дороже чем средняя 3841.67
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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