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 ."…"; //вывод анонса статей
В итоге мы получим следующий результат:
На закате солнца высоко над городом на каменной террасе одного из самых красивых зданий в Москве, здания, построенного около полутораста лет назад, находились двое: Воланд и Азазелло. Они не были видны снизу, с улицы, так как их закрывала от…
Jajuk — приложение для организации и воспроизведения музыкальных коллекций. Jajuk интуитивно понятен, быстр и предоставляет различные способы для выполнения одних и тех же действий. Это полнофункциональное приложение, предназначенное для опытных пользователей с очень большими или разбросанными по разным носителям музыкальными коллекциями.
При помощи программы можно создавать список воспроизведения,…
War Thunder — компьютерная многопользовательская онлайн-игра, посвящённая боевой авиации, бронетехнике и флоту времён Второй Мировой войны и послевоенного периода. Проект разрабатывается и издаётся компанией Gaijin Entertainment, известной в первую очередь, своими игровыми авиасимуляторами для ПК и консолей.
В War Thunder будут представлены три вида войск, которые смогут участвовать в одном бою, или же по отдельности.…
File Commander — консольный файловый менеджер, который является почти полным аналогом Norton Commander.
Так же как и в Norton Commander в File Commander имеется два окна в которых отображена домашняя директория пользователя, при этом выделенное окно является текущем, а второе окно используется для указания куда копировать или перемещать папку или файл. Так же второе окно используется для вывода информации об активном окне. В…
IBM Lotus Symphony — бесплатный набор (freeware) офисных приложений для создания, редактирования и коллективного использования текстов, электронных таблиц, презентаций и других документов с закрытым кодом.IBM Lotus Symphony — помогает пользователям создавать, изменять и совместно использовать документы, электронные таблицы и презентации. Это бесплатное программное обеспечение идеально подходит как для бизнеса, так…
kcheckers — это Qt-версия классической настольной игры в шашки. Имеет следующие особенности:
Встроенный игровой движок.
Различные уровни мастерства: Beginner, Novice, Average, Good, Expert и Master.
Несколько тем для игровой доски.
Поддержка переносимого формата базы данных с нотацией игр.
Сохранение, загрузка и перезапуск игры.
Автоматическая смена цвета шашек.
Многократные отмены/возвраты ходов.
Нумерация игрового поля…