Обрезка тек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 ."…"; //вывод анонса статей

В итоге мы получим следующий результат:

На закате солнца высоко над городом на каменной террасе одного из самых красивых зданий в Москве, здания, построенного около полутораста лет назад, находились двое: Воланд и Азазелло. Они не были видны снизу, с улицы, так как их закрывала от…

Добавить комментарий

Случайные статьи

  • Усилитель мощности на TA8200AH

    Усилитель мощности на TA8200AH

    Микросхему TA8200AH используют в качестве усилителе мощности в ТВ и стерео комплексах. Микросхема имеет встроенную функцию MUTE и тепловую защиту. Усилитель на базе TA8200AH имеет следующие технические характеристики: Напряжение питания от +10 до +37В (номинальное напряжение +28В) Ток покоя от 50 до 105мА в зависимости от напряжения питания Пиковых выходной …Подробнее...
  • Электронное пианино — детская игрушка

    Предложенная схема очень проста не требует регулировки, не содержит дефицитных деталей и доступна для изготовления любому начинающему радиолюбителю. Игрушка содержит определенное число клавиш (кнопок), кол-во клавиш может быть любым. При нажатии клавиши схема генерирует тональный сигнал воспроизводимый динамиком с сопротивлением катушки не менее 8 Ом. Напряжение питания может быть выбрано …Подробнее...
  • Пайка (видео ролики)

    Пайка микросхем горячим воздухом 08:24   http://video.yandex.ru/users/sales-chip-dip-ru/view/666/ Температурный режим пайки 03:05   http://video.yandex.ru/users/sales-chip-dip-ru/view/363/ Краткий обзор химии для пайки 03:13   http://video.yandex.ru/users/sales-chip-dip-ru/view/51/Подробнее...
  • Индикатор уровня сигнала на транзисторах

    Это простой индикатор уровня сигнала для звуковоспроизводящей аппаратуры, схема адаптирована к различным потребностям пользователей. Может быть адаптирована к различным уровням входного сигнала- TR1 (регулировка уровня входного напряжения), TR2 (регулировка усиления). Принцип работы: после усиления ОУ на TL017 сигнал выпрямляется диодами D1-D2 (в дальнейшем используется только положительная полуволна сигнала), далее сигнал …Подробнее...
  • Простой лабораторный источник питания

    Источник питания работает от сетевого напряжения 220В. Параметры источника: Регулируемое положительное(относительно общего провода) напряжение1,3-30В с макс. током нагрузки до 1,5А Постоянное положительное напряжение 5В с током нагрузки до 2А Постоянное положительное напряжение 12В с током нагрузки до 2А Постоянное положительное напряжение 15В с током нагрузки до 2А Постоянное отрицательное напряжение …Подробнее...