Как проверить, содержит ли строка определенную подстроку? . У меня есть массив объектов с именем {category.files}
и вывод каждого имени объекта.Проверьте, содержит ли строка содержащую подстроку в VHS 2.4
<f:for each="{category.files}" as="file">
<p>{file.name}</p>
</f:for>
Теперь я пытаюсь проверить, содержит ли имя определенную подстроку, и если истина выводит его? В моем случае я ищу подстроку пожар.
Я нашел способ VHS contains, но я не знаю, как его использовать, так как нет реального примера.
Как это работает в моем случае?
<f:for each="{category.files}" as="file">
??? ??? ??
<v:if.string.contains then="[mixed]" else="[mixed]" haystack="{file}" needle="fire">
<!--output it if found -->
<!-- else, do nothing -->
</v:if.string.contains>
</f:for>
Итак, другими словами, я пытаюсь найти огонь в стоге.
Спасибо! К сожалению, я не могу проверить это прямо сейчас, потому что я получаю 'Невозможно проанализировать класс: FluidTYPO3 \ Vhs \ ViewHelpers \ If \ String \ ContainsViewHelper, возможно, не загружен или нет автозагрузчика?'. Я попытался использовать код vhs в частичном расширении. Может быть, мне нужно сначала включить VHS? – Black
Попробуйте добавить '' '{namespace v = FluidTYPO3 \ Vhs \ ViewHelpers}' '' в начале вашего шаблона –
Хмм, я попробовал, но все тот же сообщение об ошибке. Должен ли я включать VHS в 'ext_localconf.php' или где-нибудь, чтобы расширение могло его использовать? – Black