sprintf()


string sprintf ( string $format, bool/int/string $args... )

Описание

sprintf() возвращает форматированую строку. Параметры ($args …) будут вставлены в знак процента (%) в строку формата $format. Если тип данных параметра отличается от формата в процентах, возникает ошибка "жонглирование" (juggling).

Параметры

format: %% - записывает буквальный символ процента
%b - записывает двоичное число (аргумент: целое число)
%c - записывает символ ASCII-значения (аргумент: целое число)
%d - записывает десятичное число (аргумент: целое число)
%u - записывает беззнаковое десятичное число (аргумент: целое число)
%o - записывает восмеричное число (аргумент: целое число)
%e - записывает научную нотацию (аргумент: плавающая точка (float))
%E - также, как и %s, только использует прописную букву (агрумент: плавающая точка (float))
%f - записывает число с плавающей точкой (аргумент: плавающая точка (float))
%F - идентичен %s
%g - меньше %e и %f (аргумент: плавающая точка (float))
%G - меньше %E и %f (аргумент: плавающая точка (float))
%s - записывает строку (аргумент: строка)
%x - записывает шестнадцатеричное число со строчными буквами (аргумент: строка)
%X - записывает шестнадцатеричное число с заглавными буквами (аргумент: строка)
Если между знаком процента (%) и буквой формата вставлено число, это означает, что это цифра данных. Если номер начинается с нуля(0), пробел будет заменен на 0.
Если между знаком процента (%) и буквой или номером вставлен символ ‘+’, он выводит знак (+/-), даже если это число положительное.

Возврат значений

Возвращает форматированную строку, при ошибке выводит PHP error

Пример

<?php
$n =  43951789;
$u = -43951789;
$c = 65;        // decimal 65, hexadecimal 0x41, ‘A’

echo sprintf("%%b = %b\r\n", $n);         // binary representation
echo sprintf("%%c = %c\r\n", $c);         // print the ascii character, same as chr() function
echo sprintf("%%d = %d\r\n", $n);          // standard integer representation
echo sprintf("%%+d = %+d\r\n", $n);        // standard integer representation with sign
echo sprintf("%%u = %u\r\n", $n);          // unsigned integer representation of a positive integer
echo sprintf("%%u = %u\r\n", $u);          // unsigned integer representation of a negative integer
echo sprintf("%%o = %o\r\n", $n);          // octal representation
echo sprintf("%%e = %e\r\n", (float)$n);  // scientific notation
echo sprintf("%%E = %E\r\n", (float)$n);  // scientific notation with a upper case E
echo sprintf("%%f = %f\r\n", (float)$n);  // floating point notation
echo sprintf("%%F = %F\r\n", (float)$n);  // floating point notation
echo sprintf("%%g = %g\r\n", (float)$n);  // shorter form
echo sprintf("%%G = %G\r\n", (float)$n);  // shorter form
echo sprintf("%%s = %s\r\n", (string)$n); // string representation
echo sprintf("%%x = %x\r\n", $n);           // hexadecimal representation (lower-case)
echo sprintf("%%X = %X\r\n", $n);           // hexadecimal representation (upper-case)

$msg = 'sollae';

echo sprintf("[%s]\r\n",      $msg);  // standard string output
echo sprintf("[%10s]\r\n",    $msg);  // right-justification with spaces
echo sprintf("[%-10s]\r\n",   $msg);  // left-justification with spaces
echo sprintf("[%010s]\r\n",   $msg);  // zero-padding works on strings too
?>

Смотрите также

printf()

Примечания

Данная функция идентична функции sprintf() группы PHP.