You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Twig中length函数异常,求获取分类数组子数组长度的方法

解决Twig中获取分类子数组长度的问题

我来帮你搞定这个Twig里length函数的问题~针对你提供的分类数组结构,其实用length过滤器完全能拿到每个分类项的子数组长度,大概率是数组访问路径的小失误导致的,下面给你具体的实现方法和排查要点:

正确用法示例

假设后端传递到Twig的分类数组变量名为category(对应你给出的数组开头[category] => Array),你可以通过遍历数组,对每个分类项的children字段应用length过滤器:

{% for category_item in category %}
  <div>
    分类名称:{{ category_item.name }}<br>
    子分类数量:{{ category_item.children|length }}
  </div>
{% endfor %}

针对你给出的示例数组,这段代码会输出:

分类名称:Desktops
子分类数量:2

排查要点(如果还是无法正常工作)

如果执行后没得到预期结果,可以检查这几点:

  • 键名拼写是否准确:确认你要统计的子数组键是children,别和示例里的children3搞混,拼写错误是最常见的问题。
  • 子数组是否存在且可迭代:如果部分分类项可能没有children字段,或者children是null/非数组类型,可添加判断避免报错:
    {% for category_item in category %}
      子分类数量:{{ (category_item.children is defined and category_item.children is iterable) ? category_item.children|length : 0 }}
    {% endfor %}
    
  • 变量名是否匹配:确认Twig中使用的变量名和后端传递的一致,比如是不是应该用category而不是其他自定义名称。

内容的提问来源于stack exchange,提问作者Radhika

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:31:51