За последние 24 часа нас посетили 22448 программистов и 1142 робота. Сейчас ищут 700 программистов ...

Непростое, или мне так кажется, округление чисел, Help

Тема в разделе "Сделайте за меня", создана пользователем Nubcoder32, 18 апр 2021.

  1. Nubcoder32

    Nubcoder32 Новичок

    С нами с:
    23 мар 2021
    Сообщения:
    27
    Симпатии:
    0
    Здравствуйте уважаемые форумчане. Возникла вроде бы несложная задача, но решение найти не удалось.
    На сайте есть числа, целые или флоат, их нужно округлять и приводить к единому виду 10.10, то есть до сотых. Целые числа приводить к виду 10.00

    Проблема 1) При использовании round (x , 2); может вернуть как сотые, так и десятые 10,99 или 10,9
    Проблема 2) Целые числа привести к виду 10,00

    Можно конечно отдельно накидать функцию, которая будет проверять число и при необходимости делать $x .= '.00'; или $x .= '.0'; но может кто знает как это сделать более элегантно?
    Прошу не пинать, еще новичек.
     
  2. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.072
    Симпатии:
    1.237
    Адрес:
    там-сям
    Тип float неточный, просто запомни это. Не всегда можно получить значение "до сотых". Много кто накалывался с этим. round() не поможет, т.к. он возвращает float, который не точный :)

    Сформулируй задачу так: получить строковое представление числа с двумя знаками после десятичной точки. Это можно сделать через number_format() или sprintf(). Справка на https://php.net в помощь!
     
    don.bidon и Nubcoder32 нравится это.
  3. Nubcoder32

    Nubcoder32 Новичок

    С нами с:
    23 мар 2021
    Сообщения:
    27
    Симпатии:
    0
    То, что надо, спасибо!