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 ."…"; //вывод анонса статей
В итоге мы получим следующий результат:
На закате солнца высоко над городом на каменной террасе одного из самых красивых зданий в Москве, здания, построенного около полутораста лет назад, находились двое: Воланд и Азазелло. Они не были видны снизу, с улицы, так как их закрывала от…
Notepadqq — текстовый редактор, аналог популярного редактора среди пользователей Windows Nottepad++. Notepadqq предоставляет очень много возможностей для просмотра и редактирования текстов, а также имеет удобный, понятный и интуитивный интерфейс.
Notepadqq обладает функцией подсветки синтаксиса для более чем 100 различных языков, умеет свертывание кода, цветовые схемы, мониторинг файлов, а также множественный…
Audacity — звуковой редактор для Linux/Unix, Windows, MacOS с поддержкой работы с несколькими дорожками одновременно. Его назначение — упрощение записи, проигрывания и редактирования оцифрованного звука. Позволяет анализировать спектр звука, создавать звуковые эффекты, отменять и повторять действия.Поддерживает форматы Ogg Vorbis, MP2, MP3, WAV, AIFF, и AU.Возможности программы:
импорт и экспорт файлов WAV, MP3 (с…
Vendetta Online — космическая многопользовательская ролевая онлайн игра. В игре игрок управляет космическим кораблем, воюет с врагами (другими людьми), занимается торговлей, контрабандой и т.д.
Управление кораблем
Клавиши Q и E повороты корабля вокруг оси, клавиши W и S ускорение и торможение корабля, при помощи мышки производится поворот корабля, F1 — полное описание всех клавиш…
Kubrick — игра, основанная на головоломке «кубик Рубика» и использующая библиотеки 3D-графики OpenGL.
В Kubrick можно играть с кубиками, «кирпичиками» и «плитками» размером от 2x2x1 до 6x6x6. Имеются несколько встроенных головоломок различной сложности, а также демонстрации их решения и красивые узоры. Есть возможности сохранить и перезагрузить игру, неограниченная глубина отмены и повтора…
Kobo Deluxe — двумерный шутер от третьего лица с простой и чувствительной системой управления, где нужно сражаться с кучей вражеских кораблей, которые стреляют, охотятся на вас, окружая ведут огонь, или даже запускают к вам другие корабли, пока вы пытаетесь уничтожить их базу, похожую на лабиринт. В игре 50 уровней, каждый следующий сложнее предыдущего, с различным набором врагов, для борьбы с которыми надо…