| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Проверка строки на значение типа INT |
| Автор: Mal Hack 10.6.2005, 23:10 | ||
| Сабж такой. Есть строка. Надо проверить что в ней находится целочисленное значение. is_numeric пропускает и float значения, поэтому не подхожит, is_int само собой дает false, т.е. на входе - строка. Делать (int) перед переменной не катит, т.к. "1.1" преобразовывается в "1". Пока обхожусь таким вариантом:
|
| Автор: Irokez 10.6.2005, 23:25 | ||
не проверял правда.. |
| Автор: Mal Hack 10.6.2005, 23:34 | ||
(int) даст 0, если не сможет преобразовать. |
| Автор: Irokez 10.6.2005, 23:39 | ||
|
| Автор: Mal Hack 10.6.2005, 23:49 | ||||||
Условие:
Пример:
Вывод:
|
| Автор: Black 10.6.2005, 23:50 | ||
| Mal Hack может как-то так замутить:
|
| Автор: Mal Hack 10.6.2005, 23:56 | ||
Так, там условие должно быть с тремя =.
PHP-DIRECTOR попробуй на строке "1.5". Пропустит, а мне этого не надо, как раз. |
| Автор: Black 10.6.2005, 23:57 | ||
| Mal Hack щас посмотрим... я думал тебе надо любые цисла а тебе целые.. щас посмотрю Добавлено @ 00:06 Вот так вроде работает:
|
| Автор: Irokez 11.6.2005, 13:45 |
| Mal Hack мое же вроде работает ... |
| Автор: Mal Hack 11.6.2005, 13:51 | ||||
|
| Автор: Irokez 11.6.2005, 13:55 | ||||||||
ты же строчку забыл
Добавлено @ 13:57 там еще int можно убрать ..
|
| Автор: Mal Hack 11.6.2005, 14:05 | ||||
| Irokez. Ага, теперь работает Ноу меня попроще
|
| Автор: Irokez 11.6.2005, 14:20 | ||
намного |
| Автор: Black 11.6.2005, 16:48 |
| Mal Hack а мое что разве не работает??? |
| Автор: Mal Hack 11.6.2005, 17:10 | ||||
PHP-DIRECTOR
|
| Автор: Bikutoru 12.6.2005, 11:35 |
| А можно такой глупый вопрос, а каким боком 1.1 относится к типу int? |
| Автор: Irokez 12.6.2005, 12:55 | ||
можно, никаким |
| Автор: Opik 12.6.2005, 18:51 | ||
А у меня короче:
|
| Автор: Mal Hack 12.6.2005, 19:03 |
| Мдя... А я еще ман ночь читаю.... Opik заслуженный плюс... |
| Автор: Irokez 12.6.2005, 19:53 | ||
блин.. первый раз увидел эти функции, от меня тоже |
| Автор: capitan 3.12.2007, 12:51 |
| Вопрос в продолжение топика. А чем принципиально отличается int и intval ? Как мне сказали, int не всегда приведёт строку к 0. |
| Автор: kasmanaft 3.12.2007, 17:32 | ||||
Добавлено через 5 минут и 43 секунды Хм... Вроде такой способ приводили... Чем не устроило? |
| Автор: kasmanaft 4.12.2007, 07:05 |
| А ччёрт, не заметил, что тема старая capitan, я принципиальных отличий не замечал.. |
| Автор: Mal Hack 22.12.2007, 00:40 |
| capitan, первое работает с типом, второе со значением, подход к решению задачи - разный, либо с фундамента, либо с крыши. |
| Автор: solenko 28.2.2008, 17:17 | ||
| Между (int) и intval() есть две большые разницы ) 1. (int) -- операция, а intval -- функция. Соответственно, int быстрее 2. У intval есть второй параметр -- основание
|
| Автор: flashaa 28.2.2008, 17:19 | ||
У меня вот так:
|
| Автор: lonli 8.3.2008, 02:20 |
| В жизни не додумался бы до (string)(int)$a Спасибо. Но между прочем, с "+4" не пройдёт (+ отбрасывается). |