2012-06-13 2 views
2

Я использую echo "$".sprintf("%01\$.2f",$numvar); для форматирования моего доллара, но я только копировал и вставлял это. Я просмотрел документацию на php.net, но мне все еще не ясно.Объяснение этой строки формата, используемой в PHP sprintf

Пожалуйста, помогите мне понять, что делает каждая часть "%01\$.2f" в этой функции.

+0

Хорошие примеры на http://www.phpreferencebook.com/samples/sprintf-function/ – GDP

+0

Хорошие примеры приведены в самом руководстве PHP: http://php.net/sprintf - всякий раз, когда у вас есть проблема/вопрос с определенной функцией в PHP заходит на страницу руководства. Как вы уже там посмотрели, какую часть конкретно вы не поняли? – hakre

ответ

4
  • % является началом спецификации на преобразования

  • 01\$ означает, что значение будет помещается в первый элемент результата

    Как правило, то же самое было бы указано как 1$

  • .2 является спецификатор точности, который диктует, сколько десятичных цифр должны быть отображены

  • f означает, что аргумент трактуется как поплавок, и представлены в виде числа с плавающей точкой (локали известно)

Для получения полной информации о выше, и то, что доступно, смотрите описание параметра sprintf()format.

+0

Есть ли настоящая цель для \, хотя? С ним или без него он, похоже, дает тот же результат. – kevin628

+1

@ kevin628 в этом случае нет, так как '$ .' не является допустимым именем переменной. – salathe

+1

Его можно упростить до «% 1 $ .2f», который говорит: возьмите первый аргумент и отформатируйте его как float, две цифры после точки. – madfriend

1

Первый аргумент функции sprint - это «формат». Возможные форматы включают в себя:

Возможные значения формата:

  1. %% - возвращает знак процента
  2. % б - Binary число
  3. % C - символов в соответствии со значением ASCII
  4. % d - Подписано десятичное число
  5. % e - Научные обозначения (например, 1.2e + 2)
  6. % и - целое десятичное число
  7. % е - число с плавающей точкой (локальные настройки известно)
  8. % F - число с плавающей точкой (не локальные настройки осведомленные)
  9. % о - восьмеричное число
  10. % s - Строка
  11. % х - шестнадцатеричное число (прописные буквы)
  12. % X - шестнадцатеричное число (прописные буквы)

Дополнительные значения формата. Они расположены между% и письма (например,% .2f): (. Силы и + и - перед числами По умолчанию только отрицательные числа отмечены)

  1. «+»
  2. ' (Указывает, что использовать в качестве дополнения. Значение по умолчанию - это пробел. Должно использоваться вместе с спецификатором ширины. Пример:% 'x20s (здесь используется «x» как прокладка)
  3. «-» (выравнивает по левому краю значение переменной)
  4. [0-9] (Указывает минимальную ширину удерживаемой переменной)
  5. .[0-9] (Определяет число десятичных цифр или максимальной длины строки)
Смежные вопросы