littleman
6.03.2014 - 15:08
Хочу сделать проверку на число , но проблема в проверки is_int и GET работаю не так .
$Urls = explode("/",rtrim($_GET['url'],"/"));
if (is_int($Urls))
{
echo "Число";
}else{
echo "Bad";
}
Вар дамп выдаёт string(7) "5654654" Bad , над числами зависли ковычки . Из за них они пишет бад .
привести к типу, потом проверять
littleman
6.03.2014 - 15:22
killer8080
Тут проблема , можно вписать 1e4 и он засчитает что это число .
Мне нужно число , без точек и всего . 564 или 8871 число . А нумерик не подходит .
killer8080
6.03.2014 - 15:23
Цитата (littleman @ 6.03.2014 - 13:22) |
можно вписать 1e4 и он засчитает что это число |
кто скажет что это не число, пусть первый кинет в меня камень
Спустя
51 секунда killer8080 написал(а):
Цитата (littleman @ 6.03.2014 - 13:22) |
Мне нужно число , без точек и всего . 564 или 8871 число . А нумерик не подходит . |
регуляркой проверяй, так будет проще
killer8080
6.03.2014 - 15:29
if (preg_match('/^\d+$/', $num)) {
...
littleman
6.03.2014 - 15:29
Нашёл вот такое решение ctype_digit , вроде то что мне нужно , но описано на старом форуме.
Цитата |
Мануал - ctype_digit — Проверяет на наличие цифровых символов в строке |
Игорь_Vasinsky
6.03.2014 - 15:34
пффф.
чем is_numeric() не устраивает - покажи конкретный пример
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
killer8080
6.03.2014 - 15:36
Цитата (Игорь_Vasinsky @ 6.03.2014 - 13:34) |
покажи конкретный пример |
так он его уже показал
Цитата (littleman @ 6.03.2014 - 13:29) |
но описано на старом форуме |
не важно, в deprecated её не помещали, значит можно использовать
littleman
6.03.2014 - 15:38
is_numeric() Не устраивает тем что работает он с числами (как я выразился с начало что мне нужно числа) , а мне нужно ЦИФРЫ - как раз
ctype_digit работает с цифрами , а также убивает надобность вы в вардампе я про ковычки .
Вот из мануала , а также в 5 версии исправили (До версии PHP 5.1.0 эта функция возвращала TRUE, если в качестве text передавалась пустая строка.)
<?php
$numeric_string = '42';
$integer = 42;
ctype_digit($numeric_string);
ctype_digit($integer);
is_numeric($numeric_string);
is_numeric($integer);
?>
littleman
6.03.2014 - 15:39
Я сам изначально поставил вопрос не правильно , сейчас всё гуд .