0

我正在尝试做的是使用树枝模板包含/删除基于 if 语句的一段标记。这看起来很简单,但我对整个 PHP(和树枝)很陌生,我不确定为什么这不起作用......

{% set regions = ["en", "en-euw", "de", "es", "fr", "it", "en-eune", "pl", "ro", "el", "pt-br", "tr",      "ru", "mx" ] %}
{% if {{ locale.url_code }} is iterable %}
<p>lol bro</p>
{% endif %}

首先,{{ locale.url_code }} 将打印数组中的一种语言代码,但比数组中列出的要多得多。

基本上我正在尝试设置一个包含适当语言/区域代码的数组,并且如果 {{ locale.url_code }} 在“区域”数组内 - 在 if 语句中显示标记。我不完全确定我了解可迭代的工作原理......但我认为这将是完成这项工作的关键。我也不是 100% 确定我是否正确设置了阵列...

非常感谢任何帮助或指导。

谢谢!

4

1 回答 1

2

上面的答案是一个很好的起点,但我无法让 in_array 在树枝模板中工作。幸运的是,在扫描了一些 twig 文档后,我看到了关于包含操作符的规则,这些规则允许我以一种奇怪的类似于 ruby​​ 的语法做我需要做的事情。请参阅下面的工作代码:

{% set regions = ['en', 'en-euw', 'de', 'es', 'fr', 'it', 'en-eune', 'pl', 'ro', 'el', 'pt-br', 'tr', 'ru', 'mx' ] %}
{% if locale.url_code in regions %}
<p>lol bro</p>
{% endif %}

希望这可以帮助任何正在寻找方法的人。

于 2013-06-03T22:41:12.453 回答