2012-11-19 7 views
5

मैं Twig PHP टेम्पलेट इंजन का उपयोग कर रहा हूं।क्या ट्विग के पास एक नल कोलेस ऑपरेटर है?

क्या कोई ऑपरेटर उपलब्ध है जो पहले गैर-खाली मूल्य (कोलेसेस) आउटपुट करेगा?

उदाहरण के लिए (PHP स्यूडोकोड उपयोग करते हुए):

{{ title ?: "Default Title" }} 

मैं जानता हूँ कि मैं इस तरह कुछ कर सकते हैं, लेकिन यह थोड़ा घना है:

{% if title %}{{ title }}{% else %}{{ "Default Title" }}{% endif %} 
+1

उत्तर @molecularman द्वारा प्रदान किया गया है लेकिन मैं आपको बताना चाहता हूं कि आप अपना अंतिम उदाहरण छोटा कर सकते हैं: '{{title? शीर्षक: 'डिफ़ॉल्ट शीर्षक'}} ' –

उत्तर

10

हाँ, वहाँ इस फिल्टर कहा जाता है default। टहनी 1.12.0 के रूप में

{{ title|default("Default Title") }} 
3

, यह करता?: ऑपरेटर है, लेकिन यह वास्तव में "शून्य कोलेसिंग" नहीं है: आप नीचे की तरह अपने कोड में इसे लागू कर सकते हैं। यह सच्चाई की जांच करता है, न सिर्फ नल, थहस 0 ?: 11 बाहर आ जाएगा।

Documentation

10

अशक्त-कोलेसिंग ऑपरेटर औपचारिक रूप से टहनी 1.24 (जनवरी 25, 2016) में पेश किया गया था।

* adding support for the ?? operator

यह अब यह करने के लिए संभव है जिसका मतलब है ...

{{ title ?? "Default Title" }} 

तुम भी उन्हें एक साथ श्रृंखला कर सकते हैं, एक वैध गैर शून्य मान तक कई चर की जाँच करने के लिए है मिल गया।

{{ var1 ?? var2 ?? var3 ?? var4 }} 
संबंधित मुद्दे