truncate

Обрезает переменную до определенной длинны, по умолчанию - 80 символов. В качестве необязательного второго параметра, вы можете передать строку текста, которая будет отображатся в конце обрезанной переменной. Символы этой строки не включаются в общую длинну обрезаемой строки. По умолчанию, truncate попытается обрезать строку в промежутке между словами. Если вы хотите обрезать строку строго на указаной длинне, передайте в третий необязательный параметр значение true.

Позиция параметра Тип Обязателен По умолчанию Описание
1 integer Нет 80 Определяет максимальную длинну обрезаемой строки.
2 string Нет ... Текстовая строка, которая заменяет обрезанный текст. Её длинна НЕ включена в максимальную длинну обрезаемой строки.
3 boolean Нет false Определяет, обрезать ли строку в промежутке между словами (false) или строго на указаной длинне (true).
4 boolean Нет false Определяет, нужно ли обрезать строку в конце (false) или в середине строки (true). Обратите внимание, что при включении этой опции, промежутки между словами игнорируются.

Example 5.20. truncate


<?php
    
$smarty->assign('articleTitle', 'Two Sisters Reunite after Eighteen Years at Checkout Counter.');

?>

   

Шаблон:


{$articleTitle}
{$articleTitle|truncate}
{$articleTitle|truncate:30}
{$articleTitle|truncate:30:""}
{$articleTitle|truncate:30:"---"}
{$articleTitle|truncate:30:"":true}
{$articleTitle|truncate:30:"...":true}
{$articleTitle|truncate:30:'..':true:true}

   

Результат обработки:


Two Sisters Reunite after Eighteen Years at Checkout Counter.
Two Sisters Reunite after Eighteen Years at Checkout Counter.
Two Sisters Reunite after...
Two Sisters Reunite after
Two Sisters Reunite after---
Two Sisters Reunite after Eigh
Two Sisters Reunite after E...
Two Sisters Re..ckout Counter.