printf()


int printf ( string $format, bool/int/string $arg... )

Описание

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

Параметры

Формат: %% - выводит буквальный символ процента
%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’

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

$msg = 'sollae';

printf("[%s]\r\n",      $msg);  // standard string output
printf("[%10s]\r\n",    $msg);  // right-justification with spaces
printf("[%-10s]\r\n",   $msg);  // left-justification with spaces
printf("[%010s]\r\n",   $msg);  // zero-padding works on strings too
$ret = printf("[%'@10s]\r\n",  $msg);  // use the custom padding character ‘@’
echo "=>$ret bytes\r\n";
?>

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

sprintf()

Примечание

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