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 ."…"; //вывод анонса статей
В итоге мы получим следующий результат:
На закате солнца высоко над городом на каменной террасе одного из самых красивых зданий в Москве, здания, построенного около полутораста лет назад, находились двое: Воланд и Азазелло. Они не были видны снизу, с улицы, так как их закрывала от…
Функция array_merge_recursive() сливает элементы двух или более массивов таким образом, что значения одного массива присоединяются к значениям предыдущего. Результатом работы функции является новый массив.
Если входные массивы имеют одинаковые строковые ключи, тогда значения, соответствующие этим ключам, рекурсивно сливаются в один массив, таким образом, если одно из значений является массивом, функция сливает…
Musictube — медиаплеер для прослушивания музыки с просмотром видео с YouTube.
Musictube удобный и качественный медиаплеер, он автоматически представляет данные об исполнителе, показывает обложку альбома и данные об альбоме и композиции.
К сожалению медиаплеер платный, но доступна демоверсия на 20 дней.
Установить Musictube можно через «Цент приложений Ubuntu», а так же скачав deb пакет с официального…
Kylin Linux — семейство дистрибутивов операционной системы Linux для настольных компьютеров, созданных Оборонным научно-техническим университетом Народно-освободительной армии Китая.
Операционная система Kylin применяется в следующих сферах:
в образовании: в 2012 году в рамках программы по оказанию гуманитарной помощи (China Aid) Министерству образования и науки, молодёжи и спорта (МОНМС) Украины было бесплатно…
Цирк Linux! — сбивайте воздушные шары клоунами и старайтесь не дать им упасть
«Circus Linux!» игра, основана на выпущенной Atari в 1980 году игре «Circus Atari» для приставки Atari 2600. Игровой процесс похож на «Breakout» и «Arkanoid» — вы двигаете устройство влево и вправо, чтобы отразить падающие объекты обратно в воздух и разрушить стену.
Программа Globulation 2 доступна в официальном репозитории Ubuntu, поэтому ее…
OpenTTD — популярная компьютерная игра, аналог широко известной игры Transport Tycoon Deluxe. OpenTTD является бесплатной и свободной программой, для работы можно использовать файлы данных от платной оригинальной Transport Tycoon Deluxe.
Суть игры в создании и успешном развитии транспортного предприятия, которым руководит игрок. Развитие происходит благодаря извлечению прибыли, которая получается от перевозок грузов и…