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 :: Умный 'stristr'

 PHP.SU

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


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

> Без описания
antobra
Отправлено: 15 Сентября, 2011 - 17:36:19
Post Id


Посетитель


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


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




Подскажите как осуществить следующее:

Есть строка
$a = 'One Two Three Four FIVE Six Seven, Eight, Nine, Ten, Eleven, Twenty';

Есть stristr, который я использую как поиск в строке.
Выглядит это так

if (stristr($a, "two")) { echo 'yes'; } else { echo 'no'; }

Сейчас выводится yes. А что если мне нужно поискать не только слово two, но и допустим другие слова (допустим разом two, one, table, eye, window и др. слова). На каждую строку делать подобный код - нелепо. Есть ли другие решения?


От меня +1 в Спасибо.

(Отредактировано автором: 15 Сентября, 2011 - 17:41:05)

 
 Top
OrmaJever Модератор
Отправлено: 15 Сентября, 2011 - 17:44:52
Post Id



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


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


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




Растерялся
PHP:
скопировать код в буфер обмена
  1. $arr = array('two', 'one', 'table', 'eye', 'window');
  2. $a = 'One Two Three Four FIVE Six Seven, Eight, Nine, Ten, Eleven, Twenty';
  3.  
  4. for($i=0;$i<sizeof($arr);++$i) {
  5.         if (stristr($a, $arr[$i])) { echo 'yes<br>'; } else { echo 'no<br>'; }
  6. }


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
antobra
Отправлено: 15 Сентября, 2011 - 18:02:16
Post Id


Посетитель


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


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




Спасибо, вот не догадался))
 
 Top
DeepVarvar Супермодератор
Отправлено: 15 Сентября, 2011 - 18:20:05
Post Id



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


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


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




На плюсик не претендую, но... так аккуратнее:
PHP:
скопировать код в буфер обмена
  1. $arr = array('two', 'one', 'table', 'eye', 'window');
  2. $a = 'One Two Three Four FIVE Six Seven, Eight, Nine, Ten, Eleven, Twenty';
  3. foreach($arr as $i) echo (stristr($a,$i)) ? "yes<br />" : "no<br />";
 
 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