vprintf
(PHP 4 >= 4.1.0, PHP 5, PHP 7)
vprintf — Выводит отформатированную строку
Описание
$format
, array $values
) : int
Выводит значения массива, отформатированные в соответствии с
аргументом format, описанном в документации функции
sprintf().
Работает как printf(), но принимает не переменное число аргументов, а массив.
Список параметров
-
format -
Строка формата состоит из нуля или более директив: обычные символы (за исключением
%), которые просто выводятся без изменения и спецификаторы преобразования, каждый из которых требует передачи своего параметра.Спецификаторы преобразования имеют следующий формат:
%[argnum$][flags][width][.precision]specifier.Argnum
Целое число, за которым следует знак доллара
$, чтобы указать, какой числовой аргумент обрабатывать при преобразовании.Флаги Флаг Описание -Выравнивание по левому краю в пределах заданной ширины поля; По умолчанию выравнивание происходит по правому краю. +Печатает плюс +у не отрицательных чисел; По умолчанию знак печатается только у отрицательных чисел.(space)Дополняет результат пробелами. Это поведение по умолчанию. 0Дополняет числа нулями (только слева). Со спецификатором sтакже может дополнять нулями справа.'(char)Дополняет результат символом (char). Ширина
Целое число, определяющее минимальное количество символов, которое будет напечатано.
Точность
Точка
.с последующим целым числом, работающая по разному для разных спецификаторов:-
Для спецификаторов
e,E,fиF: задает количество цифр после десятичной запятой (по умолчанию 6). -
Для спецификаторов
gиG: задает максимальное значение печатаемых значащих цифр. -
Для спецификатора
s: задает ограничение максимального количества символов в строке, которые будут выведены.
Замечание: Если указана точка без последующего значения точности, то точность будет считаться за 0.
Замечание: Попытка использовать спецификатор позиции со значением больше, чем
PHP_INT_MAXприведет к выводу предупреждения.Спецификаторы Спецификатор Описание %Символ процента. Аргументы не требуются. bАргумент рассматривается как целое число и печатается в бинарном представлении. cАргумент рассматривается как целое число и печатается как символ из таблицы ASCII с соответствующим кодом. dАргумент рассматривается как целое число и печатается как целое число со знаком. eАргумент считается за число в научной нотации (т.е. 1.2e+2). Начиная с PHP 5.2.1, спецификатор точности задает количество цифр после десятичной запятой. В более ранних версиях он задавал общее количество значащих цифр (т.е. после запятой выводилось на 1 символ меньше). EАналогично спецификатору e, но использует заглавные символы (т.е. 1.2E+2).fАргумент считается за число с плавающей точкой (с учетом локали). FАргумент считается за число с плавающей точкой (без учета локали). Доступно с PHP 5.0.3. gОбщий формат.
Пусть P равно точности, если она не равно нулю, 6 - если точность не задана и 1, если точность задана как 0. Тогда, если преобразование со стилем "E" будет иметь показатель степени X:
Если P > X ≥ −4, преобразование будет в стиле "f" и точность будет P − (X + 1). В обратном случае, преобразование будет в стиле "e" и точность будет P − 1.
GАналогично спецификатору g, но используетEиf.hАналогично спецификатору g, но используетF. Доступен с PHP 8.0.0.HАналогично спецификатору g, но используетEиF. Доступен с PHP 8.0.0.oАргумент рассматривается как целое число и печатается в восмеричном представлении. sАргумент рассматривается и печатается как строка. uАргумент рассматривается как целое число и печатается как беззнаковое целое число. xАргумент рассматривается как целое число и печатается в шестнадцатеричном представлении (буквы будут в нижнем регистре). XАргумент рассматривается как целое число и печатается в шестнадцатеричном представлении (буквы будут в верхнем регистре). ВниманиеСпецификатор
cигнорирует значения ширины и дополненияВниманиеПопытка использовать спецификаторы с указанием ширины для строки в многобайтовой кодировке может привести к неожиданным результатам.
Переменные будут приведены к подходящему для спецификатора типу:
Обработка типов Тип Спецификатор stringsintegerd,u,c,o,x,X,bdoubleg,G,e,E,f,F -
Для спецификаторов
-
values -
Возвращаемые значения
Возвращает длину выведенной строки.
Примеры
Пример #1 vprintf(): дополнение нулями целых чисел
<?php
vprintf("%04d-%02d-%02d", explode('-', '1988-8-1'));
?>
Результат выполнения данного примера:
1988-08-01
Смотрите также
- printf() - Выводит отформатированную строку
- sprintf() - Возвращает отформатированную строку
- fprintf() - Записывает отформатированную строку в поток
- vsprintf() - Возвращает отформатированную строку
- vfprintf() - Записывает отформатированную строку в поток
- sscanf() - Разбирает строку в соответствии с заданным форматом
- fscanf() - Обрабатывает данные из файла в соответствии с форматом
- number_format() - Форматирует число с разделением групп
- date() - Форматирует вывод системной даты/времени