[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: краткое описание
maximka787
Ребят, подскажите пожалуйста, как мне обрезать краткое описание товара, таким образом, чтоб по точке завершалось.
Сейчас у меня вот так реализовано

echo '<div>'.substr($row['about'],0, 100).' ...</div>';
Эта конструкция режет не то чтоб предложение, сами слова. Ну это понятно почему. Подскажите, мне и по пробелу пойдёт обрезка, не обязательно по точке.



Спустя 13 минут, 26 секунд (28.01.2012 - 11:23) kent666 написал(а):
Если ты хочешь побезать по проелу или точке то тебе надо использовать регулярные выражения!

Спустя 17 минут, 12 секунд (28.01.2012 - 11:40) sergeiss написал(а):
Я бы так сказал... Сначала надо по-любому обрезать до максимально допустимой длины. А затем уже в этой строке искать пробел, точку или любой другой символ (например, "точку с запятой"), самый близкий к концу строки.
Вот уже второе действие можно делать и регулярками, и просто фунциями работы со строками. При этом не забываем рекомендацию из хэлпа ПХП о том, что регулярки требуют немало ресурсов. Поэтому если действие со строкой можно выполнить обычными функциями, то лучше использовать их. Потому что регулярки (функции работы с ними), вроде бы, облегчают работу программера. Но при выполнении они точно также ведут обработку строки, возможно - многократно туда-сюда бегают по строке, ищут, анализируют.

Спустя 3 часа, 34 минуты, 48 секунд (28.01.2012 - 15:15) Winston написал(а):
$split = explode(' ', $text);    // Разбиваем на слова
$descr = array_slice($split, 0, 10); // Выбираем 10 слов
echo $descr;

Спустя 19 минут, 20 секунд (28.01.2012 - 15:35) inpost написал(а):
^(.*\s*){10}


_____________
..Работает - не трогай!
Быстрый ответ:

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