반응형
배열의 요소 수 계산
Twig의 배열에있는 항목 수를 계산하려고합니다. 이것은 내가 시도한 코드입니다.
{%for nc in notcount%}
{{ nc|length }}
{%endfor%}
그러나 이것은 배열의 값 중 하나의 문자열 길이 만 생성합니다.
{{nc}}
배열의 모든 값에 대한 출력을 생성하지만 (2 개 있음) 출력이 배열의 모든 정보가 아닌 숫자 2 (개수)가되기를 원합니다.
전체 배열에 길이 필터 를 사용하십시오 . 그것은 단순한 문자열 이상에서 작동합니다.
{{ notcount|length }}
이것은 Denis Bubnov의 답변을 확장합니다.
저는 이것을 사용하여 배열 요소의 자식 값을 찾았습니다. 즉, Drupal 8 사이트에서 목차를 작성하기 위해 단락에 앵커 필드가있는 경우입니다.
{% set count = 0 %}
{% for anchor in items %}
{% if anchor.content['#paragraph'].field_anchor_link.0.value %}
{% set count = count + 1 %}
{% endif %}
{% endfor %}
{% if count > 0 %}
--- build the toc here --
{% endif %}
길이를 가져 오는 모범 사례는 length
필터를 사용 하여 시퀀스 또는 매핑의 항목 수 또는 문자열 길이를 반환하는 것입니다. 예를 들면 :{{ notcount | length }}
그러나 for
루프 의 요소 수를 계산할 수 있습니다 . 예를 들면 :
{% set count = 0 %}
{% for nc in notcount %}
{% set count = count + 1 %}
{% endfor %}
{{ count }}
이 솔루션은 조건별로 요소 수를 계산하려는 경우에 도움이됩니다. 예를 들어 name
개체 내부 에 속성이 있고 이름이 비어 있지 않은 개체 수를 계산하려는 경우 :
{% set countNotEmpty = 0 %}
{% for nc in notcount if nc.name %}
{% set countNotEmpty = countNotEmpty + 1 %}
{% endfor %}
{{ countNotEmpty }}
유용한 링크:
참조 URL : https://stackoverflow.com/questions/17665271/counting-the-number-of-elements-in-array
반응형
'Development Tip' 카테고리의 다른 글
Ruby on Rails 애플리케이션 이름을 변경하는 방법은 무엇입니까? (0) | 2021.01.06 |
---|---|
Gradle로 제품 버전 서명 (0) | 2021.01.06 |
.NET 테스트에서 모의 HttpClient를 전달하는 방법은 무엇입니까? (0) | 2021.01.06 |
MSbuild가 빌드 서버에 Visual Studio를 설치해야합니까? (0) | 2021.01.06 |
IE11에서 dispatchEvent가 작동하지 않음 (0) | 2021.01.06 |