![]() |
Как узнать, является ли число in range...
Допусти, мне нужно чтобы некая перенная обрабатывалась одним образом если она имеет значение от 1 до 20 и другим, если нет.
Мои числа имеют вид 000 то есть начинаются с нуля. Вот этот пример <?php if ($n > 020) { echo "is more than 013"; } else { echo "is less"; } ?> срабатывает только до 009. после этого мне пишут is less. Мысль ясна? Видимо, это происходит оттого что все числа начинающиеся на 0 не являются десятеричными? Как это обойти? Спасибо. |
Не пиши первый ноль. Насколько я помню, если число начинается с 0 PHP считает, что это восьмеричное число.
Добавлено через 19 минут: P.S. <?php if ($n > 020) { echo "is more than 013"; } else { echo "is less"; } ?> а почему значение разные? |
юзай функцию ltrim():
$n = ltrim($n, "0"); |
вот пример:
PHP код:
Код:
000 is less then 020 |
BiГ
@_is_absent Спасибо. А что такое %03d? |
Neo
Под число отводится три знака (как минимум) и пустые места заменяются на 0 |
Значит, если я хочу два знака, то будет %02d, так?
|
Neo
именно :) |
@_is_absent
спасибо! лови 5! |
Neo
Пасиб :) P.S. %d -- это для целых чисел. есть еще модификаторы %s -- строка, %f -- float и еще несколько других. на _http://www.php.net/manual/en/function.sprintf.php есть их описание. Правда на английском |
Часовой пояс GMT +4, время: 16:10. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.