Как мне отформатировать числовое значение в php?

#php

#php

Вопрос:

Я должен напечатать числовое значение, которое меньше 10, в следующем формате:

 for 0 I want to print it 00
for 1 I want to print it 01
for 2 I want to print it 02
  

Существуют ли какие-либо функции библиотеки php, которые будут форматировать числа таким образом?

Ответ №1:

Используйте printf или sprintf :

 $i = 1;
printf('d', $i);
  

Посмотрите на это в действии.

На sprintf странице также задокументирован синтаксис для спецификаторов форматирования ( d ), так что вы также можете увидеть, какие другие варианты доступны.

Ответ №2:

 printf('u', $number)
  

http://php.net/sprintf

Ответ №3:

Используйте функцию str_pad .

str_pad($number_str,2,'0',STR_PAD_LEFT)

Руководство по PHP — str-pad

Ответ №4:

Вы можете проверить, меньше ли значение десяти, и выполнить конкатенацию с помощью оператора dot ‘.’, т.е.

 if($i < 10 amp;amp; $i >0) print '0'.$i;
else print $i;