키가있는 어레이의 루프 용 나뭇 가지


152

Twig를 사용하고 다음과 같은 키가있는 배열이 있습니다.

array[1] = "alpha"
array[2] = "bravo"
array[3] = "charlie"
array[8] = "delta"
array[9] = "echo"

그리고이 배열의 모든 가치 를 얻기 위해 키 (1,2,3,8,9)와 내용 (alpha, bravo, charlie, delta, echo)을 루프에 넣고 싶습니다 .

이 문제를 어떻게 해결합니까?


1
PHP 루프 검색을 시도 했습니까? foreach루프를 사용하십시오 .
Josh

3
PHP가 아니라 템플릿 파일의 Twig에 있습니다!
기 illa

3
그럴 수 있지. TWIG 루프를 검색하려고 했습니까? twig.sensiolabs.org/doc/tags/for.html
Josh

답변:




15

이는 Twig 프레임 워크에서 1 차원 및 2 차원 배열에 대한 확장 연산 (예 : 정렬, 역)입니다.

1D 어레이

키 정렬 및 반전없이

{% for key, value in array_one_dimension %}
    <div>{{ key }}</div>
    <div>{{ value }}</div>
{% endfor %}

키 정렬

{% for key, value in array_one_dimension|keys|sort %}
    <div>{{ key }}</div>
    <div>{{ value }}</div>
{% endfor %}

키 정렬 및 반전

{% for key, value in array_one_dimension|keys|sort|reverse %}
    <div>{{ key }}</div>
    <div>{{ value }}</div>
{% endfor %}

2D 어레이

키 정렬 및 반전없이

{% for key_a, value_a in array_two_dimension %}
    {% for key_b, value_b in array_two_dimension[key_a] %}
        <div>{{ key_b }}</div>
        <div>{{ value_b }}</div>
    {% endfor %}
{% endfor %}

외부 배열의 키 정렬

{% for key_a, value_a in array_two_dimension|keys|sort %}
    {% for key_b, value_b in array_two_dimension[key_a] %}
        <div>{{ key_b }}</div>
        <div>{{ value_b }}</div>
    {% endfor %}
{% endfor %}

외부 및 내부 배열의 키 정렬

{% for key_a, value_a in array_two_dimension|keys|sort %}
    {% for key_b, value_b in array_two_dimension[key_a]|keys|sort %}
        <div>{{ key_b }}</div>
        <div>{{ value_b }}</div>
    {% endfor %}
{% endfor %}

외부 어레이의 키 정렬 및 내부 어레이의 키 정렬 및 반전

{% for key_a, value_a in array_two_dimension|keys|sort %}
    {% for key_b, value_b in array_two_dimension[key_a]|keys|sort|reverse %}
        <div>{{ key_b }}</div>
        <div>{{ value_b }}</div>
    {% endfor %}
{% endfor %}

외부 배열의 키 정렬 및 역순 및 내부 배열의 키 정렬

{% for key_a, value_a in array_two_dimension|keys|sort|reverse %}
    {% for key_b, value_b in array_two_dimension[key_a]|keys|sort %}
        <div>{{ key_b }}</div>
        <div>{{ value_b }}</div>
    {% endfor %}
{% endfor %}

외부 및 내부 배열 모두에서 키 정렬 및 반전

{% for key_a, value_a in array_two_dimension|keys|sort|reverse %}
    {% for key_b, value_b in array_two_dimension[key_a]|keys|sort|reverse %}
        <div>{{ key_b }}</div>
        <div>{{ value_b }}</div>
    {% endfor %}
{% endfor %}

2

"키와 값에 대한 반복"을하고 싶다고 생각합니다.

여기서 의사가 말했듯이 원하는 변수에 "| keys"를 추가하면 마술처럼 일어날 것입니다.

{% for key, user in users %}
    <li>{{ key }}: {{ user.username|e }}</li>
{% endfor %}

물어보기 전에 검색하는 것이 결코 아프지 않습니다 :)


4
답변에 "| keys"를 사용하는 예는 표시되지 않았습니다.
Adambean

6
당신은 308 점을 가지고 있기 때문에 나는 당신에게 10을주고,하지만 당신은 "이 요청하기 전에 검색을 결코 아프지 않는다"나는 그것을 꺼내, 그래서 짜증 답변
Braian 멜러
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.