Avatar ·

PHP में क्लोजर (closure) क्या है और use ऑपरेटर की क्या आवश्यकता है?

सभी को नमस्ते! मैं PHP सीखना शुरू कर रहा हूँ और अनाम फंक्शन्स (anonymous functions) और क्लोजर (closures) के विषय पर आ गया हूँ। अनाम फंक्शन्स को समझ लिया है, लेकिन क्लोजर पर पहुँचने पर `use` ऑपरेटर पर अटक गया हूँ। यहाँ वह कोड है जो मैंने डॉक्यूमेंटेशन में देखा: ```php $message = "Hello, world!"; $greeting = function() use ($message) { echo $message; }; $greeting(); ``` मैं समझता हूँ कि यह काम करता है, लेकिन समझ नहीं आता कि इस `use` की आवश्यकता क्यों है। सामान्य फंक्शन्स की तरह फंक्शन के अंदर सीधे `$message` वेरिएबल का उपयोग क्यों नहीं कर सकते? उदाहरण के लिए: ```php function test() { echo $message; // यह काम क्यों नहीं करता? } ``` मैंने यह भी पढ़ा है कि क्लोजर बाहरी स्कोप (scope) से वेरिएबल्स को "कैप्चर" कर सकते हैं। इसका क्या मतलब है? और यदि वेरिएबल को पैरामीटर के रूप में पास कर सकते हैं तो क्लोजर का उपयोग क्यों करें?

अभी तक कोई उत्तर नहीं।

लॉग इन करें उत्तर देने के लिए

ब्लॉग