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 ."…"; //вывод анонса статей
В итоге мы получим следующий результат:
На закате солнца высоко над городом на каменной террасе одного из самых красивых зданий в Москве, здания, построенного около полутораста лет назад, находились двое: Воланд и Азазелло. Они не были видны снизу, с улицы, так как их закрывала от…
Calibre — управление библиотекой электронных книг
Calibre создавалась, как готовое решение для электронных библиотек. Включает в себя управление библиотекой, преобразование форматов, перевод лент новостей в формат электронных книг и поддержку синхронизации с устройствами для чтения электронных книг.
Calibre — это прежде всего программа для создания каталогов электронных книг. Она позволяет управлять вам…
WCM Commander — это графический открытый двухпанельный файловый менеджер для Linux, FreeBSD, Windows и OS X, основанный на проекте Wal Commander. В файловом менеджере есть текстовый редактор и просмотрщик файлов с подсветкой синтаксиса, свой терминал, виртуальные файловые системы (FTP, SFTP, Samba) и многое другое. Интерфейс и горячие клавиши максимально приближены к Far Manager.
Для установки WCM Commander необходимо скачать deb пакет с…
SyncWall – программа для смены обоев на рабочем столе, которая может синхронизировать обои на нескольких рабочих столах.
Основные возможности программы:
автоматическое/ручное изменение фоновых изображений;
поддержка нескольких мониторов;
синхронизация фонового изображения между рабочими станциями;
настраиваемый интервал/время дня смены фонового изображения;
поддержка специальных эффектов для…
Road Fighter — видеоигра в жанре аркадных автогонок.
Игрок управляет гоночным автомобилем и наблюдает за игровой ситуацией сверху. Дорога расположена вертикально, при повороте поворачивается фон, но не дорога. При этом дорога имеет небольшую ширину и все повороты и изгибы дороги всегда находятся в поле экрана монитора.
На трассе присутствуют другие машины, это могут быть как противники, так и другие машины…
Berusky – свободная логическая игра, сделанная по мотивам старой, доброй головоломки Sokoban. В старую идею — перемещение ящиков в лабиринте — добавили новые предметы (взрывчатку, камни, специальные ворота и т.д.). Вдобавок, игрок, при решении головоломки, может управлять несколькими жучками (до 5-ти). Для прохождения уровня (всего их в игре примерно 120) необходимо получить 5 ключей и иметь свободный путь к…