Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Проверка, является ли строка набором цифр, разделенных запятой
 
 автор: Z3RO   (27.11.2011 в 16:16)   письмо автору
 
 

Здравствуйте. Я написал скрипт для проверки на то, является ли строка последовательностью из цифр разделённых запятыми, но данный код возвращает FALSE. Что я зделал неправильно?
$ids = '1,2,3';
    $ids = str_replace(' ', '', $ids);
    $ids = explode(',', $ids);
    foreach($ids as $key => $value)
    {
        if(!preg_match("/^[0-9]+$/", $value))
            unset($ids[$key]);
    }
    $ids = implode(',', $ids);
    if(count($ids) >= 2)
        $access = 'only:' . $ids;
    else
        $access = 'false';
    echo $access;

  Ответить  
 
 автор: cheops   (27.11.2011 в 16:20)   письмо автору
 
   для: Z3RO   (27.11.2011 в 16:16)
 

Вы используете одно и тоже имя $ids для хранения как массива, так и строки, поэтому к моменту проверки у вас в $ids опять хранится строка и count() для неё возвращает 1.

  Ответить  
 
 автор: Z3RO   (27.11.2011 в 16:25)   письмо автору
 
   для: cheops   (27.11.2011 в 16:20)
 

Спасибо огромное. Понял.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования