Разбить число по группам

bprol

Новичок
Разбить число по группам

Здравствуйте.

Есть число, допустим 10000, надо его разбить по группам по три числа (сотни, тысячи и т.д. ), т.е. на выходе должна получиться строка "10 000".

С реализацией у меня возникли проблемы :(
Как посоветуете это воплотить в жизнь?

Спасибо.
 

bprol

Новичок
С составлением алгоритма.
Первое что пришло в голову, это "откусывать" три числа с конца строки, приплюсовать к ним пробел, и затем по кругу. Но это имхо слишком в лоб. Думаю, как это решить поизящней..
 

Фанат

oncle terrible
Команда форума
гм. а куда изящней-то?
нет, ну если не брать в расчет готовые функции, встроенные в пхп (но это тогда вопрос не по умению программировать алгоритмы а по умению читать. доки), то куда там ещё оптимизировать? Написал? Работает? и ладно. Чего время тратить?
 

bprol

Новичок
>> если не брать в расчет готовые функции, встроенные в пхп (но это тогда вопрос не по умению программировать алгоритмы а по умению читать. доки)

хотите сказать, что функция есть в php?
Можно тогда попросить ее название, если не затруднит, конечно..
 

Фанат

oncle terrible
Команда форума
затруднит.
умение читать документацию, я считаю, гораздо важнее умения составлять алгоритмы.
поскольку читать учат в первом классе, а алгоритмы - в десятом. За 10 лет можно было научиться?

-~{}~ 26.02.07 11:10:

тем более, что функций не ода и не две.
я щас скажу название, а тут же набегут профессора, рассказывающие, что функция - говно, и они знают лучше. Это больно ударит по моему самолюбию
 

bprol

Новичок
Уже вот что нашел: http://www.php.net/manual/ru/function.chunk-split.php

Спасибо за наводку.
 

bprol

Новичок
$number = 1234567;
$number = strrev(chunk_split (strrev($number), 3,' '));
echo $number;

Выдает 1 234 567
 

Фанат

oncle terrible
Команда форума
О да ты не первый.
может, всё-таки, найдёшь функцию, специально для этого предназначенную?
Хорошая практика на будущее
 

Gorynych

Посетитель PHP-Клуба
Фанат

если ты о number_format, то она имеет свойство косить и завязана на локаль, что не всегда удобно
 

bprol

Новичок
если намекаете на number_format , то это для дробных чисел, у меня же целые. Можно конечно три знака с конца оттяпать, но это не фонтан.
 

Фанат

oncle terrible
Команда форума
кроме number_format есть ещё много других
предназначенных для форматирования строк

но то, что ты считаешь, что она предназначена только для дробных - это очнеь плохой признак. читать ты так и не научился
 

bprol

Новичок
ну ладно, реализовал.

если кто скажет как сделать одной функцией буду рад. Заранее спасибо.
 

baev

‹°°¬•
Команда форума
если кто скажет как сделать одной функцией
— сказали же уже.
Воспользоваться одной из функций, предназначенных для форматирования строк.
 

moxnatiy

Новичок
Gorynych
Насколько я знаю number_format на локаль не завязана.
И что ты называешь косить?
 
Сверху