sprintf

Производит форматирование строки с подстановкой переменных.
Синтаксис:

sprintf($format [,args, ...])

Эта функция возвращает строку, составленную на основе строки форматирования, содержащей некоторые специальные символы, которые будут впоследствии заменены на значения соответствующих переменных из списка аргументов.
Строка форматирования $format может включать в себя команды форматирования, предваренные символом %.
Все остальные символы копируются в выходную строку как есть. Каждый спецификатор формата (то есть, символ % и следующие за ним команды) соответствуют одному, и только одному параметру, указанному после параметра $format. Если же нужно поместить в текст % как обычный символ, необходимо его удвоить:

echo sprintf("The percentage was %d%%",$percentage);

Каждый спецификатор формата включает максимум пять элементов (в порядке их следования после символа %):

Необязательный спецификатор размера поля, который указывает, сколько символов будет отведено под выводимую величину.
В качестве символов-заполнителей (если значение имеет меньший размер, чем размер поля для его вывода)
может использоваться пробел или 0, по умолчанию подставляется пробел. Можно задать любой другой символ-наполнитель, если указать его в строке форматирования, предварив апострофом.
Опциональный спецификатор выравнивания, определяющий, будет результат выровнен по правому или по левому краю поля. По умолчанию производится выравнивание по правому краю, однако можно указать и левое выравнивание, задав символ - (минус).

Необязательное число, определяющее размер поля для вывода величины. Если результат не будет в поле, то он "вылезет" за края этого поля, но не будет усечен.
Необязательное число, которое предварено точкой ".", предписывающее, сколько знаков после запятой будет в результирующей строке.
Этот спецификатор учитывается только в том случае, если происходит вывод числа с плавающей точкой, в противном случае он игнорируется.
Наконец, обязательный (заметьте - единственный обязательный!) спецификатор типа величины, которая будет помещена в выходную строку:

b - очередной аргумент из списка выводится как двоичное целое число
c - выводится символ с указанным в аргументе кодом
d - целое число
f - число с плавающей точкой
o - восьмеричное целое число
s - строка символов
x - шестнадцатиричное целое число с маленькими буквами a-z
X - шестнадцатиричное целое число с большими буквами A-Z

Вот как можно указать точность представления чисел с плавающей точкой:

$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
// echo $money выведет "123.1"...
$formatted = sprintf ("%01.2f", $money);
// echo $formatted выведет "123.10"!

Вот пример вывода целого числа, предваренного нужным количеством нулей:

$isodate=sprintf("%04d-%02d-%02d",$year,$month,$day);