Как удалить первое слово из переменной в SMARTY

141
05 мая 2019, 11:30

Как добиться того, чтобы удалить ПЕРВОЕ слово из переменной в SMARTY? Для примера: Из "Привет стаковерфлоу, мне нужна помощь" в " стаковерфлоу, мне нужна помощь".

Answer 1

Фактически, как уже сказано в комментариях, такая логика не сосвсем относится к функционалу самого шаблона. Но в общем-то в смарти вы можете использовать любые функции пхп в качестве модификаторов. Основная проблема тут - корректно выделить первое слово, просто средствами пхп, а привести этот код в смарти не сложно.

Например, если использовать strpbreak задав ему несколько символов, которые будут ограничивать слова, то задача сведется к такому:

{$txt = "Привет стаковерфлоу, мне нужна помощь"}
{$txt|strpbrk:" ,;!"}

но это собственно простейший случай, т.к. у нас певое слово отделено лишь пробелом. А вот в случае Привет, стэковерфлоу данный модификатор найдет первую запятую и вернет строку начиная с пробела. Но случай с пробелом будет довольно частым, и легко решаем добавлением еще одного модификатора

{$txt|strpbrk:" ,;!"|trim}

В общем, для начала вам сами надо понять, как и по каким правилам вы хотите вырезать первое слово, а потом уже переносить эту логику в шаблон.

READ ALSO
Удаление файлов на сервере php

Удаление файлов на сервере php

На сервере приблизительно 30 сайтом и в каждой папке файлы с мусором (вирусом), я знаю размер и название файлов(они повторяются), пробвал написать...

357
Что посоветуете как узнать какое номер присвоит база данных при добавление нового id

Что посоветуете как узнать какое номер присвоит база данных при добавление нового id

Что посоветуете, как узнать, какое номер присвоит поле id в базе данных при добавление нового idЯ добавляю новые данные из формы в таблицу, далее...

130
Workerman PHP Client

Workerman PHP Client

Создаю веб сервер сокетов с помощью Workerman

385