Например Я пишу "Привет как дела!" то каждый слова не превышает до 20 букв то отправляет. а если "олололололололололололололо привет!" то оказал что слова он превышает 20 букв и больше то не отправлять. Как сделать не нашел такой функции =)
https://secure.php.net/manual/ru/ref.strings.php strlen(' тут текст больше 20 символов')>20 или регулярные выражение
denis01, нет! Это 1 текст который входит и пробел и слова. а мне надо проверять в тексте все слов длины...
по позициям пробела в тексте ищи. если пробел стоит на 5 позиции, то слово из 5 букв (ещё 0-ая позиция вроде есть).
Приведу пример кода а проше нету? Чтобы вы поняли! Код (PHP): function isStopText($text = false, $max_str = 20) { if(!$text) return true; $array_str = explode(" ", $text); foreach($array_str AS $str) { if(strlen($str) > $max_str) return true; } return false; } var_dump(isStopText("кусок1 кусок2 кусок3 кусок4 кусок5 кусок6", 5)); Добавлено спустя 1 минуту 36 секунд: Если вернет false значит слова в порядке! А если вернет true то слова превышает больше чем требует максимальный!
denis01, а проше нету его? чем 8 строчный код =) Добавлено спустя 15 секунд: Мой цель это уменшить код и оптимизировать =)
Код (PHP): $text = 'ололололоQQолЁлолKлололололо привет'; $pattern = '/[a-zа-яё]{20,}/iu'; echo (preg_match($pattern, $text) == 1) ? 'too long word:(' : 'OK'; Попробовать можно через https://php.net/manual/ru/function.str-word-count.php
mb_strlen($str, 'UTF-8') так лучше а то header и meta установлен UTF-8 а считает как 10 букв который слова "кусок1" Добавлено спустя 5 минут 17 секунд: smitt спс! Но если максимальный разрешеный 6 букв то в патерн считает это не максимальный то есть в патерн 7 а в слова до 6 могут быть! А так свой код норм в ней будет проверка мата =) Добавлено спустя 1 минуту 45 секунд: Тему можно # спасибо за помоши!
strlen() не катит используй iconv_strlen(), впрочем, я в другой теме уже ответил) и почему две темы то?)