0001 - как вывести цифры в таком формате (php)?

C
На сайте с 17.05.2012
Offline
69
clb
1191

0001 - как вывести цифры в таком формате (php)? То есть в четырехзначном формате.

siv1987
На сайте с 02.04.2009
Offline
427
#1

echo '000'.$number;

$len = strlen($number);

$number = $len < 4 ? str_repeat('0', $len).$number : $number;

function my_number($num){return myformated number;}

Хелпзонович
На сайте с 15.06.2005
Offline
133
#2

echo sprintf ("%04d", 17);

Вы там держитесь! Хорошего вам настроения. Здоровья.
Mad_Man
На сайте с 10.11.2008
Offline
162
#3

str_pad() в помощь.

S7
На сайте с 15.08.2010
Offline
79
#4

$n = 237;
function zeroN($n, $z) {
if(!preg_match("~^[0-9]+$~", $n)) return $n;
return str_repeat('0', $z-strlen($n)).$n;
}
echo zeroN($n, 6);

или просто без проверок:

echo str_repeat('0', 6-strlen($n)).$n;

или как Mad_Man

echo str_pad($n, 6, "0", STR_PAD_LEFT);

результат 000237

M
На сайте с 15.03.2012
Offline
128
#5

ТС, никого не слушайте, единственный правильный вариант вам предложил человек с неуместной для этого форума подписью

Хелпзонович:
echo sprintf ("%04d", 17);
Mad_Man
На сайте с 10.11.2008
Offline
162
#6
Moltisanti:
ТС, никого не слушайте, единственный правильный вариант вам предложил человек с неуместной для этого форума подписью

С каких пор в этой профессии существуют единственно правильные варианты?

M
На сайте с 15.03.2012
Offline
128
#7
Mad_Man:
С каких пор в этой профессии существуют единственно правильные варианты?

ну потому что остальные предложенные (кроме ещё вашего), совсем уж велосипеды какие-то, имхо

Malcolm
На сайте с 02.05.2007
Offline
119
#8

printf("%04d", 1);
siv1987
На сайте с 02.04.2009
Offline
427
#9
Moltisanti:
ну потому что остальные предложенные (кроме ещё вашего), совсем уж велосипеды какие-то, имхо

Это в php по фэншую так сказано?

B1
На сайте с 13.12.2012
Offline
28
#10

оно и есть самое правильное:

sprintf; функция как раз для форматирования строки.

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