Не раз приходилось сталкиваться с обрезкой строки до определенного количества слов. Однако, слова могут быть разной длины, поэтому было решено написать функцию, которая бы делала обрезку по словам, а если и нужно, то и предварительно по количеству символов.
Есть много решений, но все они не собраны воедино + не все работают с русскими символами в кодировке utf-8