Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.147.86.154] |
|
Сообщ.
#1
,
|
|
|
есть сообщение
<VovikDRG><nazarini> посидим на диване)))) :3: его я делю на кому и сообщения все делится смайлы выводятся но беда если отправляю вум челам нифига не работает почему отправляэт тока одному((( а нехорошо так ereg("<([^>]+)",$mas[message],$matches); //Ищу <VovikDRG><nazarini> $mas[message]=ereg_replace("<(.*)>","",$mas[message]); //удаляю <VovikDRG><nazarini> $mas[message]=strtr($mas[message],$smile); //заменяю смайлы $for_name=" $matches[1]"; // формирую масив кому отослать Результат вот такой 12:02:19 vovikdrg для VovikDRG: посидим на диване)))) M VovikDRG, соблюдайте элементарные правила приличия! |
Сообщ.
#3
,
|
|
|
SiMM, Пасиб))))
|
Сообщ.
#4
,
|
|
|
Вот на всякий случай готовый вариант:
<? $mas[message]="<VovikDRG><nazarini> посидим на диване)))) :3:"; // {i}Забыл учесть то, что <...> появляется несколько раз.{/i} ereg("(<[^>]+>)+",$mas[message],$matches); //Ищу <VovikDRG><nazarini> $mas[message]=ereg_replace("<(.*)>","",$mas[message]); //удаляю <VovikDRG><nazarini> $mas[message]=strtr($mas[message],$smile); //заменяю смайлы $for_name=" $matches[0]"; // формирую масив кому отослать $mas[message]=$for_name.$mas[message]; ?> |
Сообщ.
#5
,
|
|
|
ПОнял))) уже что и как тогда следующий вопрос без цыкла мона вывести $matches?
|
Сообщ.
#6
,
|
|
|
Цитата VovikDRG @ ПОнял))) уже что и как тогда следующий вопрос без цыкла мона вывести $matches? Какого цикла? |
Сообщ.
#7
,
|
|
|
Mastilior, $for_name=" $matches[0]"; виводит только первый елемент((( а остальные нет
|
Сообщ.
#8
,
|
|
|
Цитата VovikDRG @ Mastilior, $for_name=" $matches[0]"; виводит только первый елемент((( а остальные нет Цитата http://pyramidin.narod.ru/php42/f/ereg.html Если совпадения найдены для подстроки в скобках из pattern и функция вызывается с третьим аргументом regs, совпадения будут сохранены в элементах массива regs. $regs[1] содержит подстроку, которая начинается с первой левой скобки; $regs[2] содержит подстроку, которая начинается со второй, и так далее. $regs[0] содержит полную копию совпавшей строки. |
Сообщ.
#9
,
|
|
|
Mastilior, ко мне дошло но не работает(((
Добавлено даю весь код а то я запутался уже ((( 1 ereg("<([^>]+)",$mas[message],$matches); 2 $mas[message]=ereg_replace("<(.*)>","",$mas[message]); 3 $mas[message]=strtr($mas[message],$smile); 4 if(!isset($matches[0])) 5 $for_name='<b>всіх</b>'; 6 else 7 $for_name=" $matches[1]"; 8 if (strtolower($mas[name])==strtolower($login)) 9 print "<font color=red>$time</font> <b>$mas[name]</b> для $for_name: $mas[message]<br>"; 10 else 11 print "$time <b><a href=\"javascript:insertnik('$mas[name]')\">$mas[name]</a></b> для $for_name : $mas[message]<br>"; Если вывожу 0 елемент (7 строчка)тогда сообщения не выводится воообще невыводится((( Добавлено Выводится только час и логин |
Сообщ.
#10
,
|
|
|
Что в $matches после выполнения первого регэкспа?
Я же предалгал в посте #4 изменить рег. выражение. (т. к. твой вариант не учитывал то, что в сообщении может быть несколько последовательно стоящих ников): ereg("(<[^>]+>)+",$mas[message],$matches); //Ищу <VovikDRG><nazarini> |