Оператор "в" в Smarty?

Есть ли в Smarty3 оператор "in", который работает как оператор Twig:

{% if option in [1, 2, 3] %}

?

1 ответ

Решение

И да и нет. У Smarty нет собственного синтаксиса для этого, но вы можете сделать это так:

{if in_array("foo", ["bar", "foo"])}

Лично я нахожу в ключевом слове смущение. Сам PHP этого не знает. Javascript, единственный другой язык программирования, относящийся к разработчику шаблонов, рассматривает ключевое слово in как array_key_exists() скорее, чем in_array(), Не уверен, хотел ли я, чтобы данный шаблонизатор делал что-то другое...

Другие вопросы по тегам