Сенсей
Новичок
Проверить.. не повторяются ли элементы массива в строке
это список кодов смайлов... нужно ограничить против спама.. str_replace хороше работает.. но в версиях ниже 5 count не поддерживается... приходится придумыватьь способы от спама...
Правильно:
текс и смайл :conf: еще текст и смайл :conf: еще текст и два разных смайла :conf: :ex:
НЕ правильно:
текст и несколько ОДИНАКОВЫХ смайлов подряд :conf: :conf::conf::conf:
Нужно проверить не нарушается ли правило... и сообщить об этом юзеру...
Хочется сделать проверху как можно проще... но не догоняю что то...
первая идея это работать с циклами и строковыми функциями.. но как я думаю гиморой это...
вторая идея - preg_match
но - в регуляках почти ноль..
и - как я понял preg_match не умеет работать с массивом.. то есть придется проходиться по массиву... строить находу паттерн... и потом уже проверять строку на валидность...
Есть альтернативные способы? Какие идеи?
PHP:
$this = array(':)',
':biggrin:',
':surprised:',
':eek:',
':conf:',
':cool:',
':lol:',
':mad:',
':razz:',
':(',
':oops:',
':cry:',
':evil:',
':twisted:',
':roll:',
':wink:',
':ex:',
':quest:',
':idea:',
':arr:');
Правильно:
текс и смайл :conf: еще текст и смайл :conf: еще текст и два разных смайла :conf: :ex:
НЕ правильно:
текст и несколько ОДИНАКОВЫХ смайлов подряд :conf: :conf::conf::conf:
Нужно проверить не нарушается ли правило... и сообщить об этом юзеру...
Хочется сделать проверху как можно проще... но не догоняю что то...
первая идея это работать с циклами и строковыми функциями.. но как я думаю гиморой это...
вторая идея - preg_match
но - в регуляках почти ноль..
и - как я понял preg_match не умеет работать с массивом.. то есть придется проходиться по массиву... строить находу паттерн... и потом уже проверять строку на валидность...
Есть альтернативные способы? Какие идеи?
напиши какого вида у тебя смайлики (тока, чтобы форум их не портил) и какие правила замены (только без "например").