[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Есть preg_replace, вместо него нужно что то другое
Страницы: 1, 2, 3, 4
VeRTak
Всем привет есть функция которая по регулярке проверяет на длинную строку ну и разбивает ее.


preg_replace('#([^\s]{'. $width .'})#u', '$1'. $break , $text);


Но мне вот что нужно, что бы если есть длинная строка выводить ошибку юзеру, что мол не флуди.

Вот что пока мне пришло в голову это разбить сообщение по пробелам потом посчитать каждое слово, но по моему геморно, как лучше сделать?
Игорь_Vasinsky
))))бля.

mb_strlen()
strlen()


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
chee
laugh.gif

_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
VeRTak
Цитата
mb_strlen — Получает длину строки


К примеру сообщение такого вида,


Привет мир, как дела?


тут аж 4 слова, я для чего и написал про пробелы. Старость что ли, совсем не внимательны :D

На регулярку наверное вообще внимание ни кто не обратил :D
Игорь_Vasinsky
Цитата
на длинную строку ну и разбивает ее.
ты символы или слова считаешь?))
для слов explode() с пробелом biggrin.gif

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
VeRTak
Игорь_Vasinsky
Цитата (Игорь_Vasinsky @ 1.04.2016 - 22:23)
для слов explode() с пробелом


ну вот я в первом посте и писал что первое мне пришло в голову.


Сейчас попробую более подробно.

есть сообщение от юзера, тут 2 строчки и они не длинные надо их пропустить

Привет мир!


А тут уже 3 строчки и это сообщение не надо пропускать, так как в строке имеется 10 символов

Привет мир! 1234567890



Это чисто как пример. Одним словом мне надо посчитать символы в строке которая вложена в другую строку, как то так :D Понятно что можно через explode и.т.д Просто после explode еще уйму дел надо проделать.
Игорь_Vasinsky
Цитата
есть сообщение от юзера, тут 2 строчки

Цитата
Привет мир!


Цитата
А тут уже 3 строчки и это сообщение не надо пропускать

Цитата
Привет мир! 1234567890


я понимаю, пятница, все дела

я в этот раз на посту, поэтому у меня в обоих случаях по 1й строчки.


я конечно понял про что ты

2 массива сравнивать умеешь?

тока нужно всё в 1й регистр перевести и от знаков препинания наверн избавиться.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
VeRTak
Игорь_Vasinsky

Я не совсем понял причем тут 2 массива, именно два smile.gif Если отказаться от знаков препинания, то можно флудануть запятыми smile.gif
Игорь_Vasinsky
так, давайка разберёмься кто тут трезвый.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
VeRTak
Игорь_Vasinsky

Дэк я как стекло, на работе сижу smile.gif
Игорь_Vasinsky
дык я дома в стекло.

флуд же ты делаешь.

а что такое флуд? это базар не в тему.

я не пойму чё те надо.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
VeRTak
Игорь_Vasinsky
Цитата (Игорь_Vasinsky @ 1.04.2016 - 23:45)
я не пойму чё те надо.



Смотри. Есть чат люди переписываются. В каждом сообщение много слов, и мне надо блокировать сообщения и не добавлять в бд, где слово состоит больше 50-ти символов. Именно блокировать а не обрезать пробелами через регулярку.
casper - gg
Цитата (Wind @ 2.04.2016 - 00:00)
Смотри. Есть чат люди переписываются. В каждом сообщение много слов, и мне надо блокировать сообщения и не добавлять в бд, где слово состоит больше 50-ти символов. Именно блокировать а не обрезать пробелами через регулярку.


то есть фраза из 49 слов по 49 символов должна пройти, а фраза из одного слова в 50 символов не должна пройти? или фраза, скажем из 5-ти слов, в котором есть два слова превышающие 50 символов, должна записаться без этих двух слов? точно не бухаете на работе???)

как на счет ограничения в БД на длину текста?
VeRTak
casper - gg

Ух. Да стоит у меня varchar 255 и валидатор стоит на максимальную длину строки. Появляется скрол снизу при длинных словах. Я хотел обрезать пробелами через регуляреку, но не устроило человека, надо ошибку юзеру показывать
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.