"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > एल्विस ऑपरेटर (?:) क्या है और यह PHP में कैसे काम करता है?

एल्विस ऑपरेटर (?:) क्या है और यह PHP में कैसे काम करता है?

2024-11-21 को प्रकाशित
ब्राउज़ करें:775

What is the Elvis Operator (?:) and How Does it Work in PHP?

एल्विस ऑपरेटर (?:) PHP में सुलझाया गया

एक जटिल PHP कोडबेस की गहराई में, आपका सामना एक रहस्यमय ऑपरेटर से हो सकता है: ?: ऑपरेटर. इसे "एल्विस ऑपरेटर" कहा जाता है, यह आपको आश्चर्यचकित कर सकता है, "इसका उद्देश्य क्या है?"

?: ऑपरेटर, संक्षेप में, अपने बाएं ऑपरेंड का मूल्यांकन करता है यदि बाएं ऑपरेंड को "सत्य" माना जाता है, और सही ऑपरेंड अन्यथा। दूसरे शब्दों में:

foo ?: bar

लगभग टर्नरी ऑपरेटर के बराबर है:

foo ? foo : bar

या पारंपरिक if-else स्टेटमेंट में:

if (foo) {
    foo = foo;
} else {
    foo = bar;
}

हालांकि, टर्नरी ऑपरेटर के विपरीत, ?: ऑपरेटर केवल एक बार बाएं ऑपरेंड का मूल्यांकन करता है, जिससे दक्षता बढ़ती है।

उदाहरण उपयोग

एक सामान्य उपयोग का मामला स्व-जाँच के लिए है, जैसा कि कोड स्निपेट में देखा गया है:

$items = $items ?: $this->_handle->result('next', $this->_result, $this);

यहाँ, यह $this->_handle->result() का परिणाम $items को निर्दिष्ट करता है यदि $आइटम शून्य या ग़लत है, जबकि $आइटम को अन्यथा अपरिवर्तित छोड़ दिया गया है।

अतिरिक्त उदाहरण

व्यवहार पर प्रकाश डालने के लिए यहां कुछ और उदाहरण दिए गए हैं:

var_dump(5 ?: 0); // 5
var_dump(false ?: 0); // 0
var_dump(null ?: 'foo'); // 'foo'
var_dump(true ?: 123); // true
var_dump('rock' ?: 'roll'); // 'rock'
var_dump('' ?: 'roll'); // 'roll'
var_dump('0' ?: 'roll'); // 'roll'
var_dump('42' ?: 'roll'); // '42'

क्या आपको भविष्य में ?: ऑपरेटर का सामना करना पड़ता है, याद रखें कि इसका लक्ष्य सत्यता के आधार पर मूल्यांकन और असाइन करने का एक संक्षिप्त तरीका प्रदान करना है, जिससे आपका कोड अधिक कुशल और पठनीय बन जाता है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3