Twig: 맀크둜 μΈμˆ˜μ— λŒ€ν•œ 기본값을 μ„€μ •ν•  수 μžˆλŠ” κ°€λŠ₯μ„± μΆ”κ°€

에 λ§Œλ“  2011λ…„ 09μ›” 21일  Β·  6μ½”λ©˜νŠΈ  Β·  좜처: twigphp/Twig

{% macro teaser(show, class, truncate) %} 같은 맀크둜 μ •μ˜λ₯Ό μ‚¬μš©ν•˜μ‹­μ‹œμ˜€. 읽어보면 μ–΄λ–€ argsκ°€ ν•„μš”ν•˜κ³  μ–΄λ–€ 것이 ν•„μš”ν•˜μ§€ μ•Šμ€μ§€ μ•Œ 수 μ—†μŠ΅λ‹ˆλ‹€. TwigλŠ” λ˜ν•œ λˆ„λ½λœ μΈμˆ˜μ— λŒ€ν•΄ 였λ₯˜λ₯Ό 던질 수 μ—†μœΌλ―€λ‘œ 엉망이 되기 μ‰½μŠ΅λ‹ˆλ‹€.

{% macro teaser(show, class, truncate = false) %} 라고 말할 수 μžˆλ‹€λ©΄ μ½”λ“œμ˜ λ™μž‘μ€ λ™μΌν•˜μ§€λ§Œ 훨씬 더 자체 λ¬Έμ„œν™”λ˜λ©° class κ°€ λˆ„λ½λœ 경우 TwigλŠ” 이제 λ‹€μŒκ³Ό 같이 ν‘œμ‹œλ˜μ–΄μ•Ό 함을 μ•Œ 수 μžˆμŠ΅λ‹ˆλ‹€. 거기에 μ˜ˆμ™Έλ₯Ό λ˜μ§‘λ‹ˆλ‹€. BC μ€‘λ‹¨μ΄μ§€λ§Œ strict_variablesκ°€ ν™œμ„±ν™”λœ κ²½μš°μ—λ§Œ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

+1
ν•΄κ²° 방법은 μ²˜μŒμ— 기본값을 μ„€μ •ν•©λ‹ˆλ‹€.

{% macro input(name, value, type) %}
    {% set type = type|default('text') %}
{% endmacro %}

λͺ¨λ“  6 λŒ“κΈ€

λ§€ν¬λ‘œμ— 10개의 μΈμˆ˜κ°€ 있고 κ·Έ 쀑 5κ°œλŠ” 선택 사항이고 30-50μ€„μ˜ λ§ˆν¬μ—…μ΄ μžˆμ„ λ•Œ λ¬Έμ œκ°€ 훨씬 더 μ‹¬κ°ν•΄μ§‘λ‹ˆλ‹€. κ·Έ μ‹œμ μ—μ„œ μ½”λ“œλ₯Ό λΆ„μ„ν•˜λŠ” 데 10뢄을 μ†ŒλΉ„ν•˜μ§€ μ•Šκ³ λŠ” ν•„μˆ˜ λ§€κ°œλ³€μˆ˜λ₯Ό μ •μ˜ν•˜λŠ” 것이 거의 λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€.

이 κΈ°λŠ₯도 ν•„μš”ν•©λ‹ˆλ‹€.

+1

+1

이것은 λˆ„λ½λœ μΈμˆ˜μ™€ ν¬ν•¨λ˜μ—ˆμ§€λ§Œ null인 인수λ₯Ό ꡬ별할 방법이 μ—†κΈ° λ•Œλ¬Έμ— 특히 λ¬Έμ œμž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ λ‹€μŒκ³Ό 같이 μ •μ˜λœ λ§€ν¬λ‘œκ°€ μžˆλŠ” 경우

{% macro(arg1,arg2) %}

맀크둜 자체 λ‚΄μ—μ„œ {{ myMacro(goodArg,nullArg) }} 와 {{ myMacro(goodArg) }} λ₯Ό ꡬ별할 수 μžˆλŠ” 방법은 μ—†μŠ΅λ‹ˆλ‹€. arg2 null λŠ” 두 경우 λͺ¨λ‘

+1

+1
ν•΄κ²° 방법은 μ²˜μŒμ— 기본값을 μ„€μ •ν•©λ‹ˆλ‹€.

{% macro input(name, value, type) %}
    {% set type = type|default('text') %}
{% endmacro %}
이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰