Выходная форматированная строка:
<?php$number = 9;$str = "Пекин";printf("В %s миллионов велосипедов.",$number,$str);?>Функция printf() выводит форматированную строку.
Параметры arg1, arg2, ++ будут вставлены в основную строку под знаком процента (%). Эта функция выполняется шаг за шагом. В первый знак % вставьте arg1, во второй знак % вставьте arg2 и так далее.
Примечание. Если символов % больше, чем параметров arg, необходимо использовать заполнители. Заполнитель вставляется после символа % и состоит из числа и "$". См. пример 2.
Совет: Связанные функции: sprintf(), vprintf(), vsprintf(), fprintf() и vfprintf().
printf( формат,arg1,arg2,arg++ )
параметр | описывать |
---|---|
формат | Необходимый. Указывает строку и способ форматирования переменных внутри нее. Возможные значения формата: %% — возвращает знак процента % %b - двоичное число %c — символ, соответствующий значению ASCII. %d — Десятичное число со знаком (отрицательный, 0, положительный) %e — используйте научную запись строчными буквами (например, 1.2e+2). %E — используйте научную запись в верхнем регистре (например, 1.2E+2). %u — десятичное число без знака (больше или равно 0) %f — число с плавающей запятой (локальная настройка) %F — число с плавающей запятой (неродная настройка) %g — более короткая версия %e и %f %G — короче %E и %f %o - восьмеричное число %s - строка %x - Шестнадцатеричное число (строчные буквы) %X — шестнадцатеричное число (заглавные буквы) Дополнительные значения формата. Должен быть помещен между % и буквой (например, %.2f): + (Добавьте + или - перед числом, чтобы определить знак числа. По умолчанию отмечаются только отрицательные числа, а положительные числа не отмечаются) ' (Указывает, что использовать в качестве заполнения, по умолчанию — пробелы. Его необходимо использовать со спецификатором ширины. Например: %'x20s (используйте «x» в качестве заполнения)) - (значение левой корректировочной переменной) [0-9] (определяет минимальную ширину значения переменной) .[0-9] (указывает количество десятичных знаков или максимальную длину строки) Примечание. Если используется несколько приведенных выше значений формата, они должны использоваться в указанном выше порядке и не могут быть нарушены. |
arg1 | Необходимый. Указывает параметры, которые будут вставлены после первого знака % в строке формата. |
arg2 | Необязательный. Указывает параметры, которые будут вставлены в строку формата после второго знака %. |
аргумент++ | Необязательный. Указывает параметры, которые будут вставлены в строку формата после третьего, четвертого и т. д. символов %. |
Возвращаемое значение: | Возвращает длину выходной строки. |
---|---|
PHP-версия: | 4+ |
Используйте значение формата %f:
<?php$number = 123;printf("%f",$number);?>Используйте заполнители:
<?php$number = 123;printf("С двумя десятичными знаками: %1$.2f<br>Без десятичных знаков: %1$u",$number);?>Демонстрация всех возможных значений формата:
<?php$num1 = 123456789;$num2 = -123456789;$char = 50; // Символ ASCII 50 равен 2 // Примечание. Значение формата "%%" возвращает знак процентаprintf("%%b = %b <br>",$num1); // Двоичное числоprintf("%%c = %c <br>",$char); // ASCII Characterprintf("%%d = %d <br>",$num1 // Десятичное число со знакомprintf("%%d = %d <br>",$num2 // Десятичное число со знакомprintf("%%e); = %e <br>",$num1); // Научная запись (строчные)printf("%%E = %E <br>",$num1); // Научная запись (uppercase)printf("%%u = %u <br>",$num1 // Беззнаковое десятичное число (положительное)printf("%%u = %u <br>",$num2); десятичное число (отрицательное)printf("%%f = %f <br>",$num1 // число с плавающей запятой (с учетом локальных настроек)printf("%%F = %F); <br>",$num1); // Число с плавающей запятой (не учитывает локальные настройки)printf("%%g = %g <br>",$num1); // Меньшее из %e и %fprintf(" %%G = %G <br>",$num1); // Меньше %E и %fprintf("%%o = %o <br>",$num1); // Восьмеричное числоprintf("%%s = %s <br>",$num1); // Stringprintf("%%x = %x <br>",$num1); // Шестнадцатеричное число (строчные)printf("%%X = %X <br >",$num1); // Шестнадцатеричное число (заглавные)printf("%%+d = %+d <br>",$num1); // Спецификатор знака (положительный)printf("%%+d = %+d <br>",$num2); // Спецификатор знака (отрицательный)?>Демонстрация спецификаторов строк:
<?php$str1 = "Привет";$str2 = "Привет, мир!";printf("[%s]<br>",$str1);printf("[%8s]<br>",$str1) ;printf("[%-8s]<br>",$str1);printf("[%08s]<br>",$str1); printf("[%'*8s]<br>",$str1);printf("[%8.8s]<br>",$str2);?>