PHP: использование функции round

#php #optimization #rounding

#php #оптимизация #округление

Вопрос:

Есть ли способ избежать необходимости использовать round () дважды, как в приведенном ниже коде, чтобы я оптимизировал его?

         $item_commission = round($item_price * AMAZON_DEFAULT_ITEM_COMMISSION, 2);
        $shipping_commission = round($item_shipping * AMAZON_DEFAULT_ITEM_COMMISSION, 2);
        $total_commission  = $item_commission   $shipping_commission;
  

Комментарии:

1. Просто используйте round в последней строке

2. эти микрооптимизации (с точки зрения производительности) обычно не оказывают никакого влияния в реальном мире.

3. Что бы вы с этим ни делали, вам нужно быть последовательным. Если вы округляете две комиссии по отдельности, а затем добавляете их в одном месте, но округляете только общую сумму в другом, это может привести к разнице между двумя итогами.

4. @GetSet, я сделал что-то вроде $item_and_shipping_commission = round(($item_price $item_shipping) * AMAZON_DEFAULT_ITEM_COMMISSION, 2); $total_commission = $item_and_shipping_commission;

5. @GetSet Как упоминал droopsnoot, вы можете получить разные результаты, если сделаете это ( пример со случайными значениями ). Если то, что вам нужно, на самом деле суммирует два округленных значения, то просто сделайте это, не нужно ничего «оптимизировать», вызов на один раз меньше вообще не повлияет на производительность, если вы не делаете это миллионы раз, возможно.