Symfony2'de Twig şablon oluşturma motorunda bir nesnenin olup olmadığını nasıl kontrol edersiniz?


84

Bazı nesnelerin var olduğu ve bazılarının bulunmadığı çok boyutlu bir dizim var. Alıyorum

"StdClass" nesnesi için "kod" yöntemi ... içinde mevcut değil mi?

Şablonumda kullandığım kod:

{% for item in items %}
    <p>{% if item.product.code %}{{ item.product.code }}{% endif %}</p>
{% endfor %}

Bazı ürünlerde bu kod bulunmuyor ve maalesef bu veri yapısı bir feed aracılığıyla sağlandığı için değiştiremiyorum.

Twig belgelerine baktığımda, bir nesne veya yöntem orada olmasaydı, sadece boş döneceğini yorumladım.

Yanıtlar:


150

Hızlıca bir arama yaptım, umarım bu işinize yaramıştır: p

tanımlı

tanımlı, geçerli bağlamda bir değişkenin tanımlanıp tanımlanmadığını kontrol eder. Katı_değişkenler seçeneğini kullanırsanız bu çok kullanışlıdır:

{# defined works with variable names #}
{% if foo is defined %}
    ...
{% endif %}

{# and attributes on variables names #}
{% if foo.bar is defined %}
    ...
{% endif %}
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.