اختبار المساواة المتغيرة في غصين
سؤال
في غصين, ، هل هناك طريقة سهلة لاختبار المساواة بين متغيرين؟
{% if var1 = var2 %}
غير صالح ، {% if var1 is sameas(var2) %}
يعمل فقط إذا كان كلاهما سلاسل ...
(من المستندات) "يتحقق Sameas إذا كان المتغير يشير إلى عنوان الذاكرة نفسه من متغير آخر" ، مثل هذا مفيد.
لذا فإن الطريقة الوحيدة التي وجدتها بمقارنة الأعداد الصحيحة هي تحويلها إلى سلاسل:
{% if var1|lower is sameas(var2|lower) %}
المحلول
بقدر ما أدرك Twig يدعم جميع المشغلين المنطقيين القياسيين ==, !=, <, >, >=, and <=.
أيضا ، مثالك الأول {% if var1 = var2 %}
لا يتحقق من المساواة ، فهو يعين var2
إلى var1
, ، قد ترغب في تغييره إلى مشغل المقارنة ==
.
غصين sameas
بنيت في اختبار ، هو في الأساس عامل مقارنة نوع صارم ===
, وبالتالي لماذا كلاهما يحتاج إلى أن يكون سلاسل في مثالك.
نصائح أخرى
إذا كنت تقارن القيمة التي لها قيمة رقمية يمكنك استخدامها:
{% if (psong.songid) ==(song.id) %}