Частичный вывод фразы из языкового файла

Если в russian.php прописано так:
'new_phrase' => 'Привет друзья',

Выводим её так:
{$aLang.new_phrase}

Допустим мне необходимо вывести только «Привет» без прописывания новой фразы в языковой файл, возможно ли показать только первые 6 символов (обрезать сзади 7 символов)?

9 комментариев

avatar
{$aLang.new_phrase|truncate:6:''}
avatar
Все работает — спасибо.
В конце выглядит как кавычки, на самом деле это два апострофа
avatar
важно помнить: это в russian, а если будет будет другой язык, то…
avatar
т.е. через if можно все решить?
avatar
Прочитал здесь, что вышеуказанный вариант не разрывает слова, т.е. если нужно оставить только 1-е слово то фактически достаточно и так: {$aLang.new_phrase|truncate:1:''}. Однако не работает — остается одна буква ☹
avatar
там третий параметр нужно тогда добавить true
avatar
т.е. наоборот, не нужен 3-й параметр, просто нужно ставить к-во символов, а не в словах.

я говорил про то, что в другом языковом файле могут быть другие слова для вашей фразы
avatar
ни так {$aLang.new_phrase|truncate:1:''}, ни так {$aLang.new_phrase|truncate:1:'':true} не работает (т.е. работает, только разрывает слово), хотя в доках написано что не должен разрывать слова
в другом языковом файле могут быть другие слова
тогда думаю поможет что-то вроде этого:
if lang=ru… truncate:XX elseif lang=en… truncate:YY
avatar
тогда думаю поможет что-то вроде этого:
if lang=ru… truncate:XX elseif lang=en… truncate:YY
я об этом и говорил
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.