За последние 24 часа нас посетили 16908 программистов и 1701 робот. Сейчас ищут 1054 программиста ...

Несложная функция по работе с числами

Тема в разделе "PHP для новичков", создана пользователем Volonter, 26 окт 2022.

Метки:
  1. Volonter

    Volonter Активный пользователь

    С нами с:
    8 авг 2009
    Сообщения:
    68
    Симпатии:
    0
    Адрес:
    Москва
    Всем привет, извиняюсь за невнятный заголовок, суть в следующем:
    нужна функция, которая возвращала бы в зависимости от числа соответствующий ему диапазон,
    примерно так:
    число от 0 до 99 -> возвращаем 000
    число от 100 до 199 -> возвращаем 100
    число от 200 до 299 -> возвращаем 200
    ...
    конкретное число 18049 -> получаем 18000 (так как оно входит в первую сотню 18-й тысячи)
    ну и так далее
    Заранее благодарю за любые советы! Буду очень признателен за листинг кода, сам не осиливаю))
     
  2. mkramer

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

    С нами с:
    20 июн 2012
    Сообщения:
    8.589
    Симпатии:
    1.763
    То есть переносим в "сделайте за меня"?
     
  3. Volonter

    Volonter Активный пользователь

    С нами с:
    8 авг 2009
    Сообщения:
    68
    Симпатии:
    0
    Адрес:
    Москва
    На ваше усмотрение, конечно, я просто честно сам не понимаю как написать, может у кого то есть в наработках.
     
  4. Drunkenmunky

    Drunkenmunky Активный пользователь

    С нами с:
    12 авг 2020
    Сообщения:
    1.500
    Симпатии:
    282
    Код (Text):
    1. <?php
    2. $in  = 18049;
    3. $out = floor($in / 100) * 100;
    4. echo $out;
    5. ?>
     
    Volonter нравится это.
  5. Volonter

    Volonter Активный пользователь

    С нами с:
    8 авг 2009
    Сообщения:
    68
    Симпатии:
    0
    Адрес:
    Москва
    Супер, спасибо! А нет ли более изящного решения, кроме моего по выводу $out
    PHP:
    1. echo ($out == 0) ? '000' : $out;
    Просто мне надо получать 000, если число до 99, в принципе так тоже устроит, но наверняка есть способ красивее))
     
  6. Drunkenmunky

    Drunkenmunky Активный пользователь

    С нами с:
    12 авг 2020
    Сообщения:
    1.500
    Симпатии:
    282
    PHP:
    1. <?php
    2. $in  = 49;
    3. $out = sprintf("%03s", floor($in / 100) * 100);
    4. echo $out;
    5. ?>
     
    Volonter нравится это.
  7. Volonter

    Volonter Активный пользователь

    С нами с:
    8 авг 2009
    Сообщения:
    68
    Симпатии:
    0
    Адрес:
    Москва
    Теперь вообще красота, спасибо!