php - Twig 模板中的 "Begins with"

标签 php regex twig comparison

我有一个 Twig 模板,我想在其中测试一个项目是否以某个值开头

{% if item.ContentTypeId == '0x0120' %}
    <td><a href='?parentId={{ item.Id }}'>{{ item.BaseName }}</a><br /></td>
{% else %}
    <td><a href='?{{ item.UrlPrefix }}'>{{ item.LinkFilename }}</a></td>
{% endif %}

0x0120 可以看起来像这样,也可以像这样更复杂 0x0120D52000D430D2B0D8DD6F4BBB16123680E4F787006540​​36413B65C740B168E780DA0FB4BX。我唯一想做的就是确保它以 0x0120 开头。

理想的解决方案是使用正则表达式来解决这个问题,但我不知道 Twig 是否支持这个?

谢谢

最佳答案

您现在可以直接在 Twig 中执行此操作:

{% if 'World' starts with 'F' %}
{% endif %}

也支持“结尾为”:

{% if 'Hello' ends with 'n' %}
{% endif %}

还存在其他方便的关键字:

复杂的字符串比较:

{% if phone matches '{^[\\d\\.]+$}' %} {% endif %}

(注:双反斜杠被twig转为单反斜杠)

字符串包含:

{{ 'cd' in 'abcde' }}
{{ 1 in [1, 2, 3] }}

在此处查看更多信息:http://twig.sensiolabs.org/doc/templates.html#comparisons

关于php - Twig 模板中的 "Begins with",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15600626/

相关文章:

php - symfony2 twig - 原始和切片过滤器一起不起作用

Symfony - 在 404 页面上使用 twig trans 过滤器

php - Twig 过滤器包括模板

PHP + Mongodb concat 函数抛出错误

python - 无法解析某些内容的链接

javascript - 在ajax jquery post中发送带有&符号的字符串

regex - 带有约束的 Rails 自定义路由 - 路由要求中不允许使用正则表达式 anchor 字符

java - 读取和解析 Java 异常

php - 如何让周从星期日开始?

php - 从另一个多维数组添加一个键到一个多维数组