kimono
@kimono
Web developer

Вывод чисел через sprintf?

sprintf('%s %+d°', 'В городе N', 1); // В городе N +1°
sprintf('%s %+d°', 'В городе N', -1); // В городе N -1°
sprintf('%s %+d°', 'В городе N', 0); // В городе N +0°

Можно ли нативными средствами php убрать плюсик у нуля?
Либо предложите другую функцию для использования.
  • Вопрос задан
  • 172 просмотра
Пригласить эксперта
Ответы на вопрос 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега PHP
Вы ведь специально + указываете.
An optional sign specifier that forces a sign (- or +) to be used on a number. By default, only the - sign is used on a number if it's negative. This specifier forces positive numbers to have the + sign attached as well, and was added in PHP 4.3.0.
www.php.net/sprintf

Вот так работает нормально:
echo sprintf('%s %d°', 'В городе N', 1); // В городе N +1°
echo sprintf('%s %d°', 'В городе N', -1); // В городе N -1°
echo sprintf('%s %d°', 'В городе N', 0); // В городе N +0°

Ну или для надёжности можно знак явно указать, на случай если в будущих версиях php изменится поведение по-умолчанию: '%s %-d°'
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы