Twig에서는 동적 이름으로 변수에 액세스해야 하는 시나리오가 발생할 수 있습니다. 예를 들어 placeholder1, placeholder2 등이라는 변수가 있고 이를 루프 컨텍스트에 표시하려고 합니다.
이를 달성하려면 두 가지 접근 방식을 활용할 수 있습니다.
1. 속성 함수:
{{ attribute(_context, 'placeholder' ~ id) }}
이 경우 _context는 컨텍스트 배열이고 자리 표시자는 변수 이름의 정적 부분이며 id는 동적 부분입니다. ~로 두 부분을 연결하면 완전한 변수 이름이 생성됩니다.
2. 대괄호 표기법:
{{ _context['placeholder' ~ id] }}
이 방법은 속성 함수보다 더 간결하며 동일한 기능도 제공합니다.
존재하지 않는 변수 처리:
존재하지 않는 변수로 인한 오류를 방지하려면 strict_variables 환경 옵션을 true로 설정하고 기본 필터를 사용하는 것이 좋습니다.
{{ _context['placeholder' ~ id]|default }} {{ attribute(_context, 'placeholder' ~ id)|default }}
또는 정의된 테스트를 사용하여 변수에 액세스하기 전에 변수가 있는지 확인하세요.
{% if _context['placeholder' ~ id] is defined %} ... {% endif %}
이러한 기술을 사용하면 Twig의 변수에 동적으로 액세스하여 특정 요구 사항을 충족할 수 있습니다.
위 내용은 Twig에서 동적으로 명명된 변수에 어떻게 액세스할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!