| Ваш IP: 54.234.0.2 | Online(12) - гости: 7, боты: 5 | Загрузка сервера: 1.85 ::::::::::::

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

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

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

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

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

  • Сигнализатор уровня жидкости

    Сигнализатор уровня жидкости

    Сигнализатор состоит из генератора DD1, усилителя мощности VT3, электронного ключа VT1 VT2. Датчик состоит из 2-х металлических штырей закрепленных на планке из изоляционного материала на расстоянии 20…30 мм друг от друга. Когда вода достигает датчика, то сопротивление между штырями датчика становится относительно не большим, что достаточно для открывания ключа на …Подробнее...
  • Теростабилизатор

    Термостабилизатор предназначен для поддержания заданной температуры в теплоизоляционном ящике установленном вне отпиваемом помещении. У термостабилизатора 2-а чувствительных датчика, что повышает его надежность, даже при выходе из строя одного из датчика термостабилизатор будет нормально работать. При применении терморезисторов типа КМТ или ММТ (датчики) точность поддержания температуры составит около 1 ° С. …Подробнее...
  • Двухполосные акустические системы

    Фильтры 2-х полосных АС обычно стоят по 3-м типовым схемам. Номинальные значения  емкости и индуктивности для таких фильтров в зависимости от частоты среза и сопротивления звуковых катушек  сведены в таблице. Литература — Радиконструктор 2000-01Подробнее...
  • Преобразователь DC 12 В в AC 220 В

    Преобразователь DC 12 В в AC 220 В

    На таймере 556 (сдвоенная версия 555) можно сделать простой преобразователь постоянного напряжения 12В в переменное 220 В 50 Гц. Выходная мощность преобразователя 25 Вт. Сетевой трансформатор имеет три обмотки — 2*10 В и на 220 В. Первая секция таймера 556 работает как нестабильный генератор с частотой 50 Гц, вторая секция …Подробнее...
  • 10 полосный графический эквалайзер

    10 полосный графический эквалайзер

    Графический эквалайзер способен избирательно обрезать отдельные частоты акустического спектра. Таким образом мы можем адаптировать музыкальное произведение, характеристики пространства, под окружающую обстановку в которой прослушиваем музыкальное произведение.Схема должна быть на две части, то есть правый и левый канал. С помощью переключателя S1 мы включаем и выключаем эквалайзер, а с помощью регуляторов …Подробнее...