الاختبار defined في Twig

من موسوعة حسوب
مراجعة 16:19، 5 مايو 2021 بواسطة جميل-بيلوني (نقاش | مساهمات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يتحقق الاختبار defined إذا كان المتغير معرَّفًا في السياق الحالي أم لا، وهذا مفيد جدًا عند استخدام الخيار strict_variables:

{# مع أسماء المتغيرات defined يعمل #}
{% if foo is defined %}
    ...
{% endif %}

{# ومع السمات التي على أسماء المتغيرات#}
{% if foo.bar is defined %}
    ...
{% endif %}

{% if foo['bar'] is defined %}
    ...
{% endif %}

عند استخدام اختبار defined على تعبير يستخدم متغيرات في بعض استدعاءات التوابع، تأكد أن تكون جميعها معرفة أولًا:

{% if var is defined and foo.method(var) is defined %}
    ...
{% endif %}

انظر أيضًا

المصادر