Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Как проверить есть ли в строке символ запятой?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Никорагоа
Отправлено: 22 Сентября, 2012 - 15:26:18
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2012  


Помог: 0 раз(а)




Всем привет! Как ни пробовал разобраться с регулярками, но не могу и все Огорчение
Но не будем о грустном Радость
Из базы получаю строку.Она можеть быть вот такой 22,34,45,87,55, а может и вот такой 43(просто одно число).Нужно задать условие: если есть запятая то одно действие если нету то другое. Не думаю что это супер сложно для вас и заранее благодарю.
 
 Top
Мелкий Супермодератор
Отправлено: 22 Сентября, 2012 - 15:36:30
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




strpos!==false ?


-----
PostgreSQL DBA
 
 Top
DelphinPRO
Отправлено: 22 Сентября, 2012 - 18:32:26
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




тут нужно знать что за задача стоит перед тобой в принципе.
Потому что проверять наличие запятой, лично мне, кажется неправильной затеей.
Что такое эти числа? Какие-то идентификаторы?
Если их много, что с ними делаете? И чем это действие отличается от случая, когда число одно? (не программным кодом, а логически)


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
Никорагоа
Отправлено: 23 Сентября, 2012 - 16:32:43
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2012  


Помог: 0 раз(а)




Эти числа индетификаторы, если их несколько то я хочу превратить их в массив при помощи функции explode, если одна то делать другое....
типа так:
PHP:
скопировать код в буфер обмена
  1.  
  2. if($string имеет запятую){
  3. explode(',',$string);
  4. }else{
  5. //какое то др действие
  6. }
  7.  
 
 Top
AlexAnder
Отправлено: 23 Сентября, 2012 - 16:47:41
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 915
Дата рег-ции: Авг. 2012  
Откуда: Россия


Помог: 34 раз(а)




PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $string = '22,34,45,87,55';
  3. $len = strlen($string);
  4. $count = 0;
  5. for($i=0;$i<$len;$i++){
  6.         if($string[$i]==',') $count++;
  7. }
  8. if($count>=1){
  9.         $exp = explode(',',$string);
  10.         print_r($exp);
  11.         }
  12. else echo '$string = \''.$string.'\'';
  13. ?>

Хм


-----
Оказывается, недостаточно читать справочники, чтобы правильно писать коды. sadex ©

Форумы стали местом обучения программированию, а не решения трудных вопросов. KingStar ©
 
 Top
vanicon
Отправлено: 23 Сентября, 2012 - 16:52:55
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 808
Дата рег-ции: Янв. 2010  
Откуда: Самара


Помог: 17 раз(а)




Не думаю что тут необходим цикл.
PHP:
скопировать код в буфер обмена
  1. $mystring = '22,34,45,87,55';
  2. $pos = strpos($mystring,',');
  3. if ($pos === false) {
  4.     echo 'Запятой нет в '.$mystring;
  5. } else {
  6.    $exp = explode(',',$mystring);
  7.         print_r($exp);
  8. }


-----
Так было, так есть и так будет
 
 Top
DelphinPRO
Отправлено: 23 Сентября, 2012 - 17:19:52
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




Никорагоа пишет:
Эти числа индетификаторы, если их несколько то я хочу превратить их в массив при помощи функции explode, если одна то делать другое....
да понял я. не понимаю, зачем делать разные действия для одного и нескольких иднтификаторов. обрабатывайте один так же как и несколько.
т.е. делаете explode получаете массив с одним или несколькими элементами. в цикле foreach обрабатываете все идентификаторы.


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB