old.ubuntu-desktop.ru - Обрезка текcта на определенную длину (php) - PHP Главная > Веб-программирование > PHP
Обрезка текcта на определенную длину (php)
Для обрезки текста можно использовать функцию substr, просто указав начало отсчета (0) и количество символов после которого необходимо обрезать текст.
$text = substr($text,0,250);
Но для правильного обрезания текста лучше выполнить несколько условий, то есть убрать все html элементы, убедимся, что текст не заканчивается восклицательным знаком, запятой, точкой или тире и др.
Например у нас имеется исходный текст который необходимо обрезать:
$text = "На закате солнца высоко над городом на каменной террасе одного из самых красивых зданий в Москве, здания, построенного около полутораста лет назад, находились двое: Воланд и Азазелло. Они не были видны снизу, с улицы, так как их закрывала от ненужных взоров балюстрада с гипсовыми вазами и гипсовыми цветами, но им город был виден почти до самых краев. Воланд сидел на складном табурете, одетый в черную свою сутану; его длинная и широкая шпага была воткнута между двумя рассекшимися плитами террасы вертикально, так что получились солнечные часы. Тень шпаги медленно и неуклонно удлинялась, подползая к черным туфлям на ногах сатаны.";
$text = strip_tags($text); //уберём все html элементы
$text = iconv_substr($text , 0 , 250 , 'UTF-8' ); //обрежем текст на определённое количество символов, узазав кодировку UTF-8
$text = rtrim($text , "!,.-"); //убедимся, что текст не заканчивается восклицательным знаком, запятой, точкой или тире
$text = substr($text , 0, strrpos($text ,' ')); //находим последний пробел, устраняем его и ставим троеточие
echo $text ."…"; //вывод анонса статей
В итоге мы получим следующий результат:
На закате солнца высоко над городом на каменной террасе одного из самых красивых зданий в Москве, здания, построенного около полутораста лет назад, находились двое: Воланд и Азазелло. Они не были видны снизу, с улицы, так как их закрывала от…
«Морской бой» — игра для двух участников, в которой игроки по очереди называют координаты на неизвестной им карте соперника. Если у соперника по этим координатам имеется корабль (координаты заняты), то корабль или его часть «топится», а попавший получает право сделать ещё один ход. Цель игрока — первым поразить все корабли противника.
В игру «Морской бой» можно играть одному…
OpenPref – это кросс-платформенная реализация известной европейской игры «Преферанс», очень популярной в России. На данный момент реализован вариант «Сочи» против двух виртуальных игроков с возможностью изменения некоторых конвенций. Доступны два альтернативных алгоритма игры компьютера.
ПрограммаOpenPref доступна в официальном репозитории Ubuntu, поэтому ее можно установить через центр…
Widelands — компьютерная стратегическая игра реального времени, распространяемая по лицензии GNU GPL. Игровым процессом и некоторыми идеями похожа на The Settlers и The Settlers II. Игра находится в процессе разработки, в настоящее время работа идёт над графикой и исправлением багов. Widelands работает под Linux, BSD, Mac OS X и Windows.
Widelands включает в себя однопользовательский режим, многопользовательский режим для локальной сети и с…
Sound Switcher Indicator — индикатор для выбора входа/выхода звука в Ubuntu. Индикатор позволит Вам выбирать текущий вход и выход аудио, а также специальный порт выхода.
Sound Switcher позволяет упростить переключение для тех, кто часто переключаться между динамиками, наушниками и портом HDMI в Ubuntu.
Установка Sound Switcher Indicator в Linux Ubuntu (14.04):
sudo apt-add-repository ppa:yktooo/ppa
sudo apt-get update
sudo apt-get install indicator-sound-switcher
При постоянном…
Unvanquished — бесплатная игра, шутер от первого лица для Linux Ubuntu (игра доступна так же для Mac OS и Windows)Действие игры разворачивается в будущем, идет война между людьми и инопланетянами. В игре доступно огромное количество всевозможного оружия. В начале игры необходимо определится за кого Вы будете играть, за людей или инопланетян, так же для игры необходимо подключение к Интернету.
Игра Unvanquished создана…